Device support system and support device

ABSTRACT

A terminal device  7  includes a housing  50 , and a first terminal (charging terminal). The housing  50  is generally plate-shaped and includes an engagement hole formed therein. The first terminal is provided on a surface (bottom surface) of the housing  50  on which the engagement hole is formed. A stand  210 , which is a support device, includes a support member  211 , a second terminal (charging terminal)  212 , and guide members  213   a  and  213   b  which are rotating members. The second terminal  212  can be connected to a terminal of the terminal device  7 . The support member  211  supports a predetermined surface (back surface) of the housing  50  when the first terminal and the second terminal  212  are connected to each other. Each of the guide members  213   a  and  213   b  can rotate in a predetermined direction and is provided at such a position that it is inserted into the engagement hole when the first terminal and the second terminal  212  are connected to each other.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit under 35 U.S.C. Section 119 ofJapanese Patent Application No. 2010-245298 filed on Nov. 1, 2010,Japanese Patent Application No. 2010-245299 filed on Nov. 1, 2010,Japanese Patent Application No. 2011-092506 filed on Apr. 18, 2011,Japanese Patent Application No. 2011-092612 filed on Apr. 19, 2011,Japanese Patent Application No. 2011-102834 filed on May 2, 2011,Japanese Patent Application No. 2011-103704 filed on May 6, 2011,Japanese Patent Application No. 2011-103705 filed on May 6, 2011,Japanese Patent Application No. 2011-103706 filed on May 6, 2011, andJapanese Patent Application No. 2011-118488 filed on May 26, 2011. Theentire contents of each of these applications are incorporated herein byreference.

BACKGROUND AND SUMMARY

The present invention relates to a support device for supporting aportable device which a user can hold in hand, and a device supportsystem including such a portable device and a support device.

There are conventional systems including a portable device, such as aportable telephone, which a user can hold in hand, and a cradle used forpurposes such as charging the portable device. For example, JapanesePatent No. 4601925 discloses a cradle capable of charging a portabletelephone. A cartridge, together with a portable telephone, can beattached to the cradle, and the cradle is capable of copying a gameprogram stored in the cartridge to the portable telephone.

When charging the portable telephone, the terminal of the portabletelephone and the terminal of the cradle need to be in contact with eachother, and the portable telephone therefore needs to be attached to anappropriate position with respect to the cradle. Therefore, the cradledescribed in Japanese Patent No. 4601925 includes a guide plate inaccordance with the shape of the portable telephone (see FIG. 1). Sincethe guide plate is formed with a width in accordance with the laterallength of the portable telephone, when the portable telephone isattached to the cradle, the portable telephone is attached to anappropriate position with respect to the cradle without being misalignedin the left/right direction. Therefore, the terminals of the portabletelephone and the cradle are reliably brought into contact with eachother, thus reliably charging the portable telephone.

However, with such a method as described in Japanese Patent No. 4601925in which the position at which the portable telephone is attached isdetermined by the guide plate, the size of the cradle increases due tothe guide plate. Particularly, in recent years, the screen, etc., ofportable devices have been enlarged, and more devices are largerthemselves. If the portable devices themselves are larger, the guideplate of the cradle also needs to be larger, resulting in a very largesize of the cradle itself. Moreover, the positioning is more difficultto achieve.

It is therefore an object of the present invention to provide a supportdevice and a device support system with which the positioning of aportable device to a support device can be easily done with a simpleconfiguration.

The present invention employs the following configurations (1) to (10)to attain the object mentioned above.

(1)

An example of the present invention is a device support system includinga portable device, and a support device for supporting the portabledevice.

The portable device includes a housing and a first terminal.

The housing is a generally plate-shaped housing with a hole formedtherein. The first terminal is provided on a surface of the housing onwhich the hole is formed.

The support device includes a second terminal, a support member, and arotating member. The second, terminal can be connected to the firstterminal. The support member supports a predetermined surface of thehousing when the first terminal and the second terminal are connected toeach other. The rotating member can rotate in a predetermined directionand which is provided at such a position that the rotating member isinserted into the hole when the first terminal and the second terminalare connected to each other.

The term “portable device” as used herein includes any device that isportable, such as a portable game device, and a portable telephone, aswell as a terminal device of the embodiment to be described below. Theterm “portable” as used herein refers to such a size that it can be heldin hand and moved around by a user, or it can be rearranged to anyposition.

The terms “first terminal” and “second terminal” include chargingterminals for supplying power from one device to the other device,communication terminals (connectors) for exchanging information (data),etc.

With the configuration (1) above, if the hole of the portable device ismisaligned with the rotating member of the support device when theportable device is connected to the support device, the rotating memberrotates to thereby correct the position of the portable device forproper connection. Thus, since the portable device is supported by thesupport device while (a portion of) the rotating member is inserted intothe hole, the first terminal of the portable device and the secondterminal of the support device are reliably connected to each other.Therefore, even if the user does not accurately place the portabledevice with respect to the support device, they can easily be connectedto each other. With the configuration (1) above, the portable device canbe easily positioned with respect to the support device by a simpleconfiguration with the hole of the portable device and the rotatingmember of the support device, without using such a guide plate as thatof conventional systems. With the configuration (1) above, since such aguide plate as that of conventional systems is not used, portabledevices of various shapes and sizes can be connected to the supportdevice, and it is possible to provide a versatile support device.

(2)

The support member may support the housing so that the predeterminedsurface of the housing is placed along a predetermined support surface.In this case, the rotating member can rotate in a direction parallel tothe support surface.

The term “support surface” is a surface on which a predetermined surfaceof the housing is located when the portable device is connected to thesupport device. While the support surface is formed by a surface (thewall portion 211 a) of the support member 211 (that is, the supportmember supports the predetermined surface of the housing by a surface)in the embodiment to be described below, the support surface may beformed with any configuration. For example, the support member maysupport a certain surface of the housing at a point by a bar-shapedmember.

With the configuration (2) above, since the support member places thepredetermined surface of the housing along the support surface, it canposition the portable device with respect to a direction vertical to thesupport surface. With respect to a direction parallel to the supportsurface, the portable device slides as the rotating member rotates inthe direction, thereby correcting the position of the portable device.Therefore, the support device can reliably position the portable device.

(3)

The support member may include a groove portion into which a portion ofthe housing is inserted when the first terminal and the second terminalare connected to each other. The groove portion extends in a directionparallel to the support surface.

With the configuration (3) above, since the support member supports theportable device by the groove portion extending in a direction parallelto the support surface, it is possible to reliably position the portabledevice with respect to a direction perpendicular to that direction.

(4)

The rotating member may be provided so that a portion thereof projectsfrom a bottom surface of the groove portion.

With the configuration (4) above, the rotating member is provided on thebottom of the groove portion. Therefore, if the hole of the portabledevice is misaligned with the rotating member when the portable deviceis placed onto the support device from above, a peripheral portion ofthe hole of the housing lies on the rotating member. As a result, therotating member rotates, and it is possible to reliably correct theposition of the portable device.

(5)

The hole is formed on a lower side surface of the housing. In this case,at least two rotating members are provided side by side with each otherin the predetermined direction.

With the configuration (5) above, since the rotating members areprovided at least in two positions, if the hole of the portable deviceis misaligned with the rotating member, the bottom surface of theportable device can be in contact only with the rotating members. Then,the portable device can be moved more smoothly by means of the rotatingmembers.

(6)

The portable device may further include a display section provided on afront side of the housing. In this case, the support member supports aback surface of the housing.

With the configuration (6) above, the portable device including thedisplay section can be supported so that the display section can beviewed.

(7)

The housing may be in a horizontally-elongated plate shape. In thiscase, the first terminal and the hole are provided on a side surfacealong a long side.

With the configuration (7) above, the support device can support theportable device in a landscape position. With configuration (7) above,since it is not necessary to use a large support device even whensupporting the portable device in a landscape position, it isparticularly advantageous to employ the configurations (1) to (6) above.

(8)

The hole is formed so that the hole can engage with a predeterminedadditional device which is different from the support device.

With the configuration (8) above, the portable device can be connectedto the additional device by engaging the additional device with thehole. The hole of the portable device is used for the positioning whenconnecting with the support device, and also used for connecting withthe additional device. Therefore, it is possible to reduce the number ofholes provided in the housing of the portable device to thereby simplifythe shape of the housing.

(9)

The second terminal may be a charging terminal for supplying power tothe portable device.

With the configuration (9) above, it is possible to charge the portabledevice while supporting the portable device by means the support device.

In another example of the present invention, the present invention maybe provided as a support device having the configurations (1) to (9)above.

According to the present invention, the support device includes arotating member, whereby if the position of the portable device isshifted from the proper position, the position of the portable device iscorrected by the rotating member for proper connection. Thus, it ispossible to position the portable device with respect to the supportdevice with a simple configuration.

These and other features, aspects and advantages will become moreapparent from the following detailed description of the presentinvention when taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an external of a game system 1;

FIG. 2 is a block diagram showing an internal configuration of a gamedevice 3;

FIG. 3 is a perspective view showing an external configuration of acontroller 5;

FIG. 4 is a perspective view showing an external configuration of thecontroller 5;

FIG. 5 is a diagram showing an internal configuration of the controller5;

FIG. 6 is a diagram showing an internal configuration of the controller5;

FIG. 7 is a block diagram showing a configuration of the controller 5;

FIG. 8 is a diagram showing an external configuration of the terminaldevice 7;

FIG. 9 is a diagram showing an external configuration of the terminaldevice 7;

FIG. 10 is a diagram showing a user holding the terminal device 7 in alandscape position;

FIG. 11 is a diagram showing a user holding the terminal device 7 in alandscape position;

FIG. 12 is a diagram showing a user holding the terminal device 7 in aportrait position;

FIG. 13 is a diagram showing a user holding the terminal device 7 in aportrait position;

FIG. 14 is a block diagram showing an internal configuration of theterminal device 7;

FIG. 15 is a diagram showing an example in which an additional device(an input device 200) is attached to the terminal device 7;

FIG. 16 is a diagram showing an example in which an additional device(the input device 200) is attached to the terminal device 7;

FIG. 17 is a diagram showing another example of an input device;

FIG. 18 is a diagram showing an input device 220 shown in FIG. 17attached to the terminal device 7;

FIG. 19 is a diagram showing the input device 220 shown in FIG. 17attached to the terminal device 7;

FIG. 20 is a diagram showing another example in which an additionaldevice (a stand 210) is attached to the terminal device 7;

FIG. 21 is a diagram showing various data used in game processes;

FIG. 22 is a main flow chart showing a flow of game processes performedby the game device 3;

FIG. 23 is a flow chart showing a detailed flow of game controlprocesses;

FIG. 24 is a diagram showing the screen of a television 2 and theterminal device 7 in a first game example;

FIG. 25 is a diagram showing the screen of the television 2 and theterminal device 7 in a second game example;

FIG. 26 is a diagram showing an example of a television game imagedisplayed on the television 2 in a third game example;

FIG. 27 is a diagram showing an example of a terminal game imagedisplayed on the terminal device 7 in a third game example;

FIG. 28 is a diagram showing an example of a television game imagedisplayed on the television 2 in a fourth game example;

FIG. 29 is a diagram showing an example of a terminal game imagedisplayed on the terminal device 7 in the fourth game example;

FIG. 30 is a diagram showing how the game system 1 is used in a fifthgame example;

FIG. 31 is a diagram showing how devices included in the game system 1connected with one another in a case in which the game system 1 isconnected to an external device via a network;

FIG. 32 is a diagram showing an external configuration of a terminaldevice according to a variation of the present embodiment;

FIG. 33 is a diagram showing the terminal device shown in FIG. 32 beingheld by the user;

FIG. 34 is a diagram showing an external configuration of the terminaldevice according to another variation of the present embodiment; and

FIG. 35 is a diagram showing an external configuration of the terminaldevice according to another variation of the present embodiment.

DETAILED DESCRIPTION 1. General Configuration of Game System

A game system 1 will now be described with reference to the drawings.FIG. 1 is an external view of the game system 1. In FIG. 1, a gamesystem 1 includes a non-portable display device (hereinafter referred toas a “television”) 2 such as a television receiver, a home-console typegame device 3, an optical disc 4, a controller 5, a marker device 6, anda terminal device 7. In the game system 1, the game device 3 performsgame processes based on game operations performed using the controller5, and game images obtained through the game processes are displayed onthe television 2 and/or the terminal device 7.

In the game device 3, the optical disc 4 typifying an informationstorage medium used for the game device 3 in a replaceable manner isremovably inserted. An information processing program (a game program,for example) to be executed by the game device 3 is stored in theoptical disc 4. The game device 3 has, on the front surface thereof, aninsertion opening for the optical disc 4. The game device 3 reads andexecutes the information processing program stored on the optical disc 4which is inserted into the insertion opening, to perform the gameprocess.

The television 2 is connected to the game device 3 by a connecting cord.Game images obtained as a result of the game processes performed by thegame device 3 are displayed on the television 2. The television 2includes a speaker 2 a (see FIG. 2), and a speaker 2 a outputs gamesounds obtained as a result of the game process. In alternativeembodiments, the game device 3 and the non-portable display device maybe an integral unit. Also, the communication between the game device 3and the television 2 may be wireless communication.

The marker device 6 is provided along the periphery of the screen (onthe upper side of the screen in FIG. 1) of the television 2. The user(player) can perform game operations by moving the controller 5, thedetails of which will be described later, and a marker device 6 is usedby the game device 3 for calculating the position, the roll angle, etc.,of the controller 5. The marker device 6 includes two markers 6R and 6Lon opposite ends thereof. Specifically, a marker 6R (as well as themarker 6L) includes one or more infrared LEDs (Light Emitting Diodes),and emits an infrared light in a forward direction of the television 2.The marker device 6 is connected to the game device 3 (by a wired orwireless connection), and the game device 3 is able to control thelighting of each infrared LED of the marker device 6. The marker device6 is portable, and the user can arrange the marker device 6 at anyposition. While FIG. 1 shows an embodiment in which the marker device 6is arranged on top of the television 2, the position and the directionof arranging the marker device 6 are not limited to this particulararrangement.

The controller 5 provides the game device 3 with operation datarepresenting the content of operations performed on the controlleritself. The controller 5 and the game device 3 can communicate with eachother by wireless communication. In the present embodiment, the wirelesscommunication between controller 5 and the game device 3 uses, forexample, Bluetooth (Registered Trademark) technology. In otherembodiments, the controller 5 and the game device 3 may be connected bya wired connection. While only one controller is included in the gamesystem 1 in the present embodiment, the game device 3 can communicatewith a plurality of controllers, and a game can be played by multipleplayers by using a predetermined number of controllers (e.g., up tofour) at the same time. The detailed configuration of the controller 5will be described below.

The terminal device 7 is sized so that it can be held in one or both ofthe user's hands, and the user can hold and move the terminal device 7,or can use a terminal device 7 placed at an arbitrary position. Theterminal device 7, whose detailed configuration will be described below,includes an LCD (Liquid Crystal Display) 51 as a display, inputmechanisms (e.g., a touch panel 52), a gyrosensor 74, etc., to bedescribed later). The terminal device 7 and the game device 3 cancommunicate with each other by a wireless connection (or by a wiredconnection). The terminal device 7 receives from the game device 3 dataof images (e.g., game images) generated by the game device 3, anddisplays the images on the LCD 51. While an LCD is used as the displaydevice in the embodiment, the terminal device 7 may include any otherdisplay device such as a display device utilizing EL (ElectroLuminescence), for example. The terminal device 7 transmits operationdata representing the content of operations performed on the terminaldevice itself to the game device 3.

2. Internal Configuration of Game Device 3

An internal configuration of the game device 3 will be described withreference to FIG. 2. FIG. 2 is a block diagram illustrating an internalconfiguration of the game device 3. The game device 3 includes a CPU(Central Processing Unit) 10, a system LSI 11, an external main memory12, a ROM/RTC 13, a disc drive 14, and an AV-IC 15.

The CPU 10 performs game processes by executing a game program stored,for example, on the optical disc 4, and functions as a game processor.The CPU 10 is connected to the system LSI 11. The external main memory12, the ROM/RTC 13, the disc drive 14, and the AV-IC 15, as well as theCPU 10, are connected to the system LSI 11. The system LSI 11 performsprocesses for controlling data transmission between the respectivecomponents connected thereto, generating images to be displayed,acquiring data from an external device(s), and the like. The internalconfiguration of the system LSI 11 will be described below. The externalmain memory 12 is of a volatile type and stores a program such as a gameprogram read from the optical disc 4, a game program read from a flashmemory 17, and various data. The external main memory 12 is used as awork area and a buffer area for the CPU 10. The ROM/RTC 13 includes aROM (a so-called boot ROM) incorporating a boot program for the gamedevice 3, and a clock circuit (RTC: Real Time Clock) for counting time.The disc drive 14 reads program data, texture data, and the like fromthe optical disc 4, and writes the read data into an internal mainmemory 11 e (to be described below) or the external main memory 12.

The system LSI 11 includes an input/output processor (I/O processor) 11a, a GPU (Graphics Processor Unit) 11 b, a DSP (Digital SignalProcessor) 11 c, a VRAM (Video RAM) 11 d, and the internal main memory11 e. Although not shown in the figures, these components 11 a to 11 eare connected with each other through an internal bus.

The GPU 11 b, acting as a part of a rendering mechanism, generatesimages in accordance with graphics commands (rendering commands) fromthe CPU 10. The VRAM 11 d stores data (data such as polygon data andtexture data) necessary for the GPU 11 b to execute the graphicscommands. When images are generated, the CPU 11 b generates image datausing data stored in the VRAM 11 d. In the present embodiment, the gamedevice 3 generates both game images displayed on the television 2 andgame images displayed on the terminal device 7. Hereinafter, the gameimages displayed on the television 2 may be referred to as the“television game images”, and the game images displayed on the terminaldevice 7 may be referred to as the “terminal game images”.

The DSP 11 c, functioning as an audio processor, generates sound datausing sound data and sound waveform (e.g., tone quality) data stored inone or both of the internal main memory 11 e and the external mainmemory 12. In the present embodiment, game sounds are outputted from thespeaker of the television 2 and game sounds are outputted from thespeaker of the terminal device 7. Hereinafter, the game sounds outputtedfrom the television 2 may be referred to as a “television game sounds”,and the game sounds outputted from the terminal device 7 may be referredto as a “terminal game sounds”.

As described above, of the images and sounds generated in the gamedevice 3, data of the images and sounds outputted from the television 2is read out by the AV-IC 15. The AV-IC 15 outputs the read-out imagedata to the television 2 via an AV connector 16, and outputs theread-out sound data to the speaker 2 a provided in the television 2.Thus, images are displayed on the television 2, and sounds are outputtedfrom the speaker 2 a.

Of the images and sounds generated in the game device 3, data of theimages and sounds outputted from the terminal device 7 are transmittedto the terminal device 7 by an input/output processor 11 e, etc. Thedata transmission to the terminal device 7 by the input/output processor11 a, or the like, will be described below.

The input/output processor 11 a exchanges data with components connectedthereto, and downloads data from an external device(s). The input/outputprocessor 11 a is connected to the flash memory 17, a networkcommunication module 18, a controller communication module 19, anextension connector 20, a memory card connector 21, and a codec LSI 27.An antenna 22 is connected to the network communication module 18. Anantenna 23 is connected to the controller communication module 19. Thecodec LSI 27 is connected to a terminal communication module 28, and anantenna 29 is connected to the terminal communication module 28.

The game device 3 can be connected to a network such as the Internet tocommunicate with external information processing devices (e.g., othergame devices, various servers, computers, etc.). That is, theinput/output processor 11 a can be connected to a network such as theInternet via the network communication module 18 and the antenna 22 tocommunicate with an external information processing device(s) connectedto the network. The input/output processor 11 a regularly accesses theflash memory 17, and detects the presence or absence of any data whichneeds to be transmitted to the network, and when detected, transmits thedata to the network via the network communication module 18 and theantenna 22. Further, the input/output processor 11 a receives datatransmitted from an external information processing device and datadownloaded from a download server via the network, the antenna 22 andthe network communication module 18, and stores the received data in theflash memory 17. The CPU 10 executes a game program so as to read datastored in the flash memory 17 and use the data, as appropriate, in thegame program. The flash memory 17 may store game save data (e.g., gameresult data or unfinished game data) of a game played using the gamedevice 3 in addition to data exchanged between the game device 3 and anexternal information processing device. The flash memory 17 may alsostore a game program(s).

The game device 3 can receive operation data from the controller 5. Thatis, the input/output processor 11 a receives operation data transmittedfrom the controller 5 via the antenna 23 and the controllercommunication module 19, and stores (temporarily) it in a buffer area ofthe internal main memory 11 e or the external main memory 12.

The game device 3 can exchange data such as images and sounds with theterminal device 7. When transmitting game images (terminal game images)to the terminal device 7, the input/output processor 11 a outputs dataof game images generated by the GPU 11 b to the codec LSI 27. The codecLSI 27 per forms a predetermined compression process on the image datafrom the input/output processor 11 a. The terminal communication module28 wirelessly communicates with the terminal device 7. Therefore, imagedata compressed by the codec LSI 27 is transmitted by the terminalcommunication module 28 to the terminal device 7 via the antenna 29. Inthe present embodiment, the image data transmitted from the game device3 to the terminal device 7 is image data used in a game, and theplayability of a game can be adversely influenced if there is a delay inthe images displayed in the game. Therefore, it is preferred toeliminate delay as much as possible for the transmission of image datafrom the game device 3 to the terminal device 7. Therefore, in thepresent embodiment, the codec LSI 27 compresses image data using acompression technique with high efficiency such as the H.264 standard,for example. Other compression techniques may be used, and image datamay be transmitted uncompressed if the communication speed issufficient. The terminal communication module 28 is, for example, aWi-Fi certified communication module, and may perform wirelesscommunication at high speed with the terminal device 7 using a MIMO(Multiple Input Multiple Output) technique employed in the IEEE 802.11nstandard, for example, or may use other communication schemes.

The game device 3 transmits sound data to the terminal device 7, inaddition to image data. That is, the input/output processor 11 a outputssound data generated by the DSP 11 c to the terminal communicationmodule 28 via the codec LSI 27. The codec LSI 27 performs a compressionprocess on sound data, as with image data. While the compression schemefor sound data may be any scheme, it is preferably a scheme with a highcompression ratio and little sound deterioration. In other embodiments,the sound data may be transmitted uncompressed. The terminalcommunication module 28 transmits the compressed image data and sounddata to the terminal device 7 via the antenna 29.

Moreover, the game device 3 transmits various control data to theterminal device 7 as necessary, in addition to the image data and thesound data. Control data is data representing control instructions forcomponents of the terminal device 7, and represents, for example, aninstruction for controlling the lighting of a marker section (a markersection 55 shown in FIG. 10), an instruction for controlling theimage-capturing operation of a camera (a camera 56 shown in FIG. 10),etc. The input/output processor 11 a transmits control data to theterminal device 7 in response to an instruction of the CPU 10. While thecodec LSI 27 does not perform a data compression process in the presentembodiment for the control data, it may perform a compression process inother embodiments. The above-described data transmitted from the gamedevice 3 to the terminal device 7 may be encrypted as necessary or maynot be encrypted.

The game device 3 can receive various data from the terminal device 7.In the present embodiment, the terminal device transmits operation data,image data and sound data, the details of which will be described below.Data transmitted from the terminal device 7 are received by the terminalcommunication module 28 via the antenna 29. The image data and the sounddata from the terminal device 7 are subjected to a compression processsimilar to that on the image data and the sound data from the gamedevice 3 to the terminal device 7. Therefore, these image data and sounddata are sent from the terminal communication module 28 to the codec LSI27, and subjected to an expansion process by the codec LSI 27 to beoutputted to the input/output processor 11 a. On the other hand, theoperation data from the terminal device 7 may not be subjected to acompression process since the amount of data is small as compared withimages and sounds. It may be encrypted as necessary, or it may not beencrypted. After being received by the terminal communication module 28,the operation data is outputted to the input/output processor 11 a viathe codec LSI 27. The input/output processor 11 a stores (temporarily)data received from the terminal device 7 in a buffer area of theinternal main memory 11 e or the external main memory 12.

The game device 3 can be connected to another device or an externalstorage medium. That is, the input/output processor 11 a is connected tothe extension connector 20 and the memory card connector 21. Theextension connector 20 is a connector for an interface, such as a USB orSCSI interface. The extension connector 20 can receive a medium such asan external storage medium, a peripheral device such as anothercontroller, or a wired communication connector which enablescommunication with a network in place of the network communicationmodule 18. The memory card connector 21 is a connector for connectingthereto an external storage medium such as a memory card (which may beof a proprietary or standard format, such as SD, miniSD, microSD,Compact Flash, etc.). For example, the input/output processor 11 a canaccess an external storage medium via the extension connector 20 or thememory card connector 21 to store data in the external storage medium orread data from the external storage medium.

The game device 3 includes a power button 24, a reset button 25, and aneject button 26. The power button 24 and the reset button 25 areconnected to the system LSI 11. When the power button 24 is on, power issupplied to the components of the game device 3 from an external powersupply through an AC adaptor (not shown). When the reset button 25 ispressed, the system LSI 11 reboots a boot program of the game device 3.The eject button 26 is connected to the disc drive 14. When the ejectbutton 26 is pressed, the optical disc 4 is ejected from the disc drive14.

In other embodiments, some of the components of the game device 3 may beprovided as extension devices separate from the game device 3. In thiscase, an extension device may be connected to the game device 3 via theextension connector 20, for example. Specifically, an extension devicemay include components of the codec LSI 27, the terminal communicationmodule 28 and the antenna 29, for example, and can be attached/detachedto/from the extension connector 20. Thus, by connecting the extensiondevice to a game device which does not include the above components, thegame device can communicate with the terminal device 7.

3. Configuration of Controller 5

Next, with reference to FIGS. 3 to 7, the controller 5 will bedescribed. FIG. 3 is one perspective view illustrating an externalconfiguration of the controller 5. FIG. 4 is another perspective viewillustrating an external configuration of the controller 5. Theperspective view of FIG. 3 shows the controller 5 as viewed from the toprear side thereof, and the perspective view of FIG. 4 shows thecontroller 5 as viewed from the bottom front side thereof.

As shown in FIGS. 3 and 4, the controller 5 has a housing 31 formed by,for example, plastic molding. The housing 31 has a generallyparallelepiped shape extending in a longitudinal direction from front torear (Z-axis direction shown in FIG. 3), and as a whole is sized to beheld by one hand of an adult or a child. A user can perform gameoperations by pressing buttons provided on the controller 5, and bymoving the controller 5 itself to change the position and theorientation (tilt) thereof.

The housing 31 has a plurality of operation buttons. As shown in FIG. 3,on the top surface of the housing 31, a cross button 32 a, a firstbutton 32 b, a second button 32 c, an A button 32 d, a minus button 32e, a home button 32 f, a plus button 32 g, and a power button 32 h areprovided. In the present specification, the top surface of the housing31 on which the buttons 32 a to 32 h are provided may be referred to asa “button surface”. As shown in FIG. 4, a recessed portion is formed onthe bottom surface of the housing 31, and a B button 32 i is provided ona rear slope surface of the recessed portion. The operation buttons 32 ato 32 i are assigned, as necessary, their respective functions inaccordance with the game program executed by the game device 3. Further,the power button 32 h is used to remotely turn ON/OFF the game device 3.The home button 32 f and the power button 32 h each have the top surfacethereof recessed below the top surface of the housing 31. Therefore, thelikelihood of the home button 32 f and the power button 32 h beinginadvertently pressed by the user is reduced.

On the rear surface of the housing 31, the connector 33 is provided. Theconnector 33 is used for connecting another device (e.g., another sensorunit or another controller) to the controller 5. Both sides of theconnector 33 on the rear surface of the housing 31 have a engagementhole 33 a (see FIG. 6) for preventing easy inadvertent disengagement ofa device connected to the controller 5 as described above.

In the rear-side portion of the top surface of the housing 31, aplurality (four in FIG. 3) of LEDs 34 a to 34 d are provided. Thecontroller 5 is assigned a controller type (number) so as to bedistinguishable from other controllers. The LEDs 34 a to 34 d are eachused for informing the user of the controller type which is currentlyset for the controller 5, and for informing the user of the batterylevel of the controller 5, for example. Specifically, when gameoperations are performed using the controller 5, one of the plurality ofLEDs 34 a to 34 d corresponding to the controller type is lit up.

The controller 5 has an image capturing/processing section 35 (FIG. 6),and a light incident surface 35 a of an image capturing/processingsection 35 is provided on the front surface of the housing 31, as shownin FIG. 4. The light incident surface 35 a is made of a materialtransmitting therethrough at least infrared light from the markers 6Rand 6L.

On the top surface of the housing 31, sound holes 31 a for externallyoutputting a sound from a speaker 49 (see FIG. 5) provided in thecontroller 5 are provided between the first button 32 b and the homebutton 32 f.

Next, with reference to FIGS. 5 and 6, an internal structure of thecontroller 5 will be described. FIGS. 5 and 6 are diagrams illustratingthe internal structure of the controller 5. FIG. 5 is a perspective viewillustrating a state in which an upper casing (a part of the housing 31)of the controller 5 is removed. FIG. 6 is a perspective viewillustrating a state in which a lower casing (a part of the housing 31)of the controller 5 is removed. The perspective view of FIG. 6 shows asubstrate 30 of FIG. 5 as viewed from the reverse side.

As shown in FIG. 5, the substrate 30 is fixed inside the housing 31, andon a top main surface of the substrate 30, the operation buttons 32 a to32 h, the LEDs 34 a to 34 d, an acceleration sensor 37, an antenna 45,the speaker 49, and the like are provided. These elements are connectedto a microcomputer 42 (see FIG. 6) via lines (not shown) formed on thesubstrate 30 and the like. In the present embodiment, the accelerationsensor 37 is provided at a position offset from the center of thecontroller 5 with respect to the X-axis direction. Thus, calculation ofthe movement of the controller 5 being rotated about the Z-axis isfacilitated. Further, the acceleration sensor 37 is provided anterior tothe center of the controller 5 with respect to the longitudinaldirection (Z-axis direction). Further, a wireless module 44 (see FIG. 6)and the antenna 45 allow the controller 5 to act as a wirelesscontroller.

As shown in FIG. 6, at a front edge of a bottom main surface of thesubstrate 30, the image capturing/processing section 35 is provided. Theimage capturing/processing section 35 includes an infrared filter 38, alens 39, an image capturing element 40 and an image processing circuit41 located in this order from the front of the controller 5. Thesecomponents 38 to 41 are attached on the bottom main surface of thesubstrate 30.

On the bottom main surface of the substrate 30, the microcomputer 42 anda vibrator 46 are provided. The vibrator 46 is, for example, a vibrationmotor or a solenoid, and is connected to the microcomputer 42 via linesformed on the substrate 30 or the like. The controller 5 is vibrated byactuation of the vibrator 46 based on a command from the microcomputer42. Therefore, the vibration is conveyed to the user's hand holding thecontroller 5, and thus a so-called vibration-feedback game is realized.In the present embodiment, the vibrator 46 is disposed slightly towardthe front of the housing 31. That is, the vibrator 46 is positionedoffset from the center toward the end of the controller 5 so that thevibration of the vibrator 46 greatly vibrates the entire controller 5.Further, the connector 33 is provided at the rear edge of the bottommain surface of the substrate 30. In addition to the components shown inFIGS. 5 and 6, the controller 5 includes a quartz oscillator forgenerating a reference clock of the microcomputer 42, an amplifier foroutputting a sound signal to the speaker 49, and the like.

The shape of the controller 5, the shape of each operation button, thenumber and the positions of acceleration sensors and vibrators, and soon, shown in FIGS. 3 to 6 are merely illustrative, and the presentinvention can be realized with controllers having other shapes, numbers,and positions. Further, although in the present embodiment theimage-capturing direction of the image-capturing section is the Z-axispositive direction, the image-capturing direction may be any direction.That is, the position of the image capturing/processing section 35 (thelight incident surface 35 a of the image capturing/processing section35) in the controller 5 may not be on the front surface of the housing31, but may be on any other surface on which light can be received fromthe outside of the housing 31.

FIG. 7 is a block diagram illustrating a configuration of the controller5. The controller 5 includes an operation section (the operation buttons32 a to 32 i), the image capturing/processing section 35, acommunication section 36, the acceleration sensor 37, and a gyrosensor48. The controller 5 transmits to the game device 3, as operation data,data representing the content of operations performed on the controlleritself. Hereinafter, the operation data transmitted by the controller 5may be referred to as the “controller operation data”, and the operationdata transmitted by the terminal device 7 may be referred to as the“terminal operation data”.

The operation section 32 includes the operation buttons 32 a to 32 idescribed above, and outputs, to the microcomputer 42 of thecommunication section 36, operation button data indicating the inputstatus of the operation buttons 32 a to 32 i (e.g., whether or not theoperation buttons 32 a to 32 i are pressed).

The image capturing/processing section 35 is a system for analyzingimage data captured by the image-capturing element and calculating thecentroid, the size, etc., of an area(s) having a high brightness in theimage data. The image capturing/processing section 35 has a maximumsampling period of, for example, about 200 frames/sec., and thereforecan trace and analyze even relatively fast motion of the controller 5.

The image capturing/processing section 35 includes the infrared filter38, the lens 39, the image capturing element 40 and the image processingcircuit 41. The infrared filter 38 transmits therethrough only infraredlight included in the light incident on the front surface of thecontroller 5. The lens 39 collects the infrared light transmittedthrough the infrared filter 38 so that it is incident on the imagecapturing element 40. The image capturing element 40 is a solid-stateimage-capturing device such as, for example, a CMOS sensor or a CCDsensor, which receives the infrared light collected by the lens 39, andoutputs an image signal. The marker section 55 of the terminal device 7and the marker device 6 of which images are captured are formed bymarkers outputting infrared light. Therefore, the provision of theinfrared filter 38 enables the image capturing element 40 to receiveonly the infrared light transmitted through the infrared filter 38 andgenerate image data, so that an image of the image-capturing object(e.g., the markers of a marker section 55 and/or the marker device 6)can be captured more accurately. Hereinafter, the image taken by theimage capturing element 40 is referred to as a captured image. The imagedata generated by the image capturing element 40 is processed by theimage processing circuit 41. The image processing circuit 41 calculatesthe positions of the image-capturing objects within the captured image.The image processing circuit 41 outputs coordinates of the calculatedpositions, to the microcomputer 42 of the communication section 36. Thedata representing the coordinates is transmitted as operation data tothe game device 3 by the microcomputer 42. Hereinafter, the coordinatesare referred to as “marker coordinates”. The marker coordinates changedepending on the roll orientation (roll angle about the z axis) and/orthe position of the controller 5 itself, and therefore the game device 3can calculate, for example, the roll angle and the position of thecontroller 5 using the marker coordinates.

In other embodiments, the controller 5 may not include the imageprocessing circuit 41, and the captured image itself may be transmittedfrom the controller 5 to the game device 3. In this case, the gamedevice 3 may have a circuit or a program, having the same function asthe image processing circuit 41, for calculating the marker coordinates.

The acceleration sensor 37 detects accelerations (includinggravitational acceleration) of the controller 5, that is, force(including gravity) applied to the controller 5. The acceleration sensor37 detects a value of a portion of acceleration (linear acceleration)that is applied to the detection section of the acceleration sensor 37in the straight line direction along the sensing axis direction, amongall the acceleration applied to the detection section of theacceleration sensor 37. For example, a multi-axis acceleration sensorhaving two or more axes detects acceleration components along the axes,as the acceleration applied to the detection section of the accelerationsensor. While the acceleration sensor 37 is assumed to be anelectrostatic capacitance type MEMS (Micro Electro Mechanical System)acceleration sensor, other types of acceleration sensors may be used.

In the present embodiment, the acceleration sensor 37 detects linearacceleration in each of three axis directions, i.e., the up/downdirection (Y-axis direction shown in FIG. 3), the left/right direction(the X-axis direction shown in FIG. 3), and the forward/backwarddirection (the Z-axis direction shownn FIG. 3), relative to thecontroller 5. The acceleration sensor 37 detects acceleration in thestraight line direction along each axis, and an output from theacceleration sensor 37 represents a value of the linear acceleration foreach of the three axes. In other words, the detected acceleration isrepresented as a three-dimensional vector in an XYZ-coordinate system(controller coordinate system) defined relative to the controller 5.

Data (acceleration data) representing the acceleration detected by theacceleration sensor 37 is outputted to the communication section 36. Theacceleration detected by the acceleration sensor 37 changes depending onthe orientation and the movement of the controller 5 itself, andtherefore the game device 3 is capable of calculating the orientationand the movement of the controller 5 using the obtained accelerationdata. In the present embodiment, the game device 3 calculates theattitude, the roll angle, etc., of the controller 5 based on theobtained acceleration data.

One skilled in the art will readily understand from the descriptionherein that additional information relating to the controller 5 can beestimated or calculated (determined) through a process by a computer,such as a processor (for example, the CPU 10) of the game device 3 or aprocessor (for example, the microcomputer 42) of the controller 5, basedon an acceleration signal outputted from the acceleration sensor 37(this applies also to an acceleration sensor 73 to be described later).For example, in the case in which the computer performs a process on thepremise that the controller 5 including the acceleration sensor 37 is instatic state (that is, in the case in which the process is performed onthe premise that the acceleration to be detected by the accelerationsensor includes only the gravitational acceleration), when thecontroller 5 is actually in static state, it is possible to determinewhether or not, or how much the controller 5 is tilting relative to thedirection of gravity, based on the detected acceleration. Specifically,when the state in which the detection axis of the acceleration sensor 37faces vertically downward is used as a reference, whether or not thecontroller 5 is tilting relative to the reference can be determinedbased on whether or not 1 G (gravitational acceleration) is present, andthe degree of tilt of the controller 5 relative to the reference can bedetermined based on the magnitude thereof. Further, with the multi-axisacceleration sensor 37, it is possible to more specifically determinethe degree of tilt of the controller 5 relative to the direction ofgravity by performing a process on the acceleration signals of differentaxes. In this case, the processor may calculate, based on the outputfrom the acceleration sensor 37, the tilt angle of the controller 5, orthe tilt direction of the controller 5 without calculating the tiltangle. Thus, by using the acceleration sensor 37 in combination with theprocessor, it is possible to determine the tilt angle or the attitude ofthe controller 5.

On the other hand, when it is premised that the controller 5 is indynamic state (in which the controller 5 is being moved), theacceleration sensor 37 detects the acceleration based on the movement ofthe controller 5, in addition to the gravitational acceleration, and itis therefore possible to determine the movement direction of thecontroller 5 by removing the gravitational acceleration component fromthe detected acceleration through a predetermined process. Even when itis premised that the controller 5 is in dynamic state, it is possible todetermine the tilt of the controller 5 relative to the direction ofgravity by removing the acceleration component based on the movement ofthe acceleration sensor from the detected acceleration through apredetermined process. In other embodiments, the acceleration sensor 37may include an embedded processor or other type of dedicated processorfor performing a predetermined process on an acceleration signaldetected by the built-in acceleration detector before the accelerationsignal is outputted to the microcomputer 42. For example, when theacceleration sensor 37 is used to detect static acceleration (forexample, gravitational acceleration), the embedded or dedicatedprocessor may convert the acceleration signal to a tilt angle(s) (oranother preferred parameter).

The gyrosensor 48 detects angular velocities about three axes (the X, Yand Z axes in the embodiment). In the present specification, withrespect to the image-capturing direction (the Z-axis positive direction)of the controller 5, the rotation direction about the X axis is referredto as the pitch direction, the rotation direction about the Y axis asthe yaw direction, and the rotation direction about the Z axis as theroll direction. The number and combination of gyrosensors to be used arenot limited to any particular number and combination as long as agyrosensor 48 can detect angular velocities about three axes. Forexample, the gyrosensor 48 may be a 3-axis gyrosensor, or angularvelocities about three axes may be detected by combining together a2-axis gyrosensor and a 1-axis gyrosensor. Data representing the angularvelocity detected by the gyrosensor 48 is outputted to the communicationsection 36. The gyrosensor 48 may be a gyrosensor that detects anangular velocity or velocities about one axis or two axes.

The communication section 36 includes the microcomputer 42, a memory 43,the wireless module 44 and the antenna 45. The microcomputer 42 controlsthe wireless module 44 for wirelessly transmitting, to the game device3, data acquired by the microcomputer 42 while using the memory 43 as astorage area in the process.

Data outputted from the operation section 32, the imagecapturing/processing section 35, the acceleration sensor 37 and thegyrosensor 48 to the microcomputer 42 are temporarily stored in thememory 43. The data are transmitted as the operation data (controlleroperation data) to the game device 3. At the time of the transmission tothe controller communication module 19 of the game device 3, themicrocomputer 42 outputs the operation data stored in the memory 43 tothe wireless module 44. The wireless module 44 uses, for example, theBluetooth (registered trademark) technology to modulate the operationdata onto a carrier wave of a predetermined frequency, and radiates thelow power radio wave signal from the antenna 45. That is, the operationdata is modulated onto the low power radio wave signal by the wirelessmodule 44 and transmitted from the controller 5. The controllercommunication module 19 of the game device 3 receives the low powerradio wave signal. The game device 3 demodulates or decodes the receivedlow power radio wave signal to obtain the operation data. Based on theobtained operation data, the CPU 10 of the game device 3 performs thegame process. Note that while the wireless transmission from thecommunication section 36 to the controller communication module 19 issequentially performed with a predetermined cycle, since the gameprocess is generally performed with a cycle of 1/60 sec (as one frameperiod), the transmission preferably performed with a cycle less than orequal to this period. The communication section 36 of the controller 5outputs, to the controller communication module 19 of the game device 3,the operation data at a rate of once per 1/200 sec, for example.

As described above, as operation data representing operations performedon the controller itself, the controller 5 can transmit markercoordinate data, acceleration data, angular velocity data, and operationbutton data. The game device 3 performs the game processes using theoperation data as game inputs. Therefore, by using the controller 5, theuser can perform game operations of moving the controller 5 itself, inaddition to the conventional typical game operation of pressing theoperation buttons. For example, it enables an operation of tilting thecontroller 5 to an intended attitude, an operation of specifying anintended position on the screen with the controller 5, an operation ofmoving the controller 5 itself, etc.

While the controller 5 does not include the display for displaying thegame image in the embodiment, it may include a display for displaying,for example, an image representing the battery level, etc.

4. Configuration of Terminal Device 7

Next, a configuration of a terminal device 7 will be described withreference to FIGS. 8 to 13. FIG. 8 is a plan view showing an externalconfiguration of the terminal device 7. FIG. 8( a) is a front view ofthe terminal device 7, FIG. 8( b) is a top view thereof, FIG. 8( c) is aright side view thereof, and FIG. 8( d) is a bottom view thereof. FIG. 9is a back view of the terminal device 7. FIGS. 10 and 11 are diagramsshowing a user holding the terminal device 7 in a landscape position.FIGS. 12 and 13 are diagrams showing a user holding the terminal device7 in a portrait position.

As shown in FIG. 8, the terminal device 7 includes a housing 50generally in a horizontally-elongated rectangular plate shape. That is,it can also be said that the terminal device 7 is a tablet-typeinformation processing device. The housing 50 may have a curved surfaceor may have some protrusions, etc., as long as it is generally in aplate shape. The housing 50 is sized so that it can be held by the user.Thus, the user can hold and move the terminal device 7, and can changethe position in which the terminal device 7 is placed. The longitudinal(z-axis direction) length of the terminal device 7 is preferably 100 to150 [mm], and is 133.5 [mm] in the present embodiment. The widthwise(x-axis direction) length of the terminal device 7 is preferably 200 to250 [mm], and is 228.26 [mm] in the present embodiment. The thickness(the length in the y-axis direction) of the terminal device 7 ispreferably about 15 to about 30 [mm] in a plate-shaped portion and about30 to about 50 [mm] including the thickest part, and is 23.6 (40.26 inthe thickest part) [mm] in the present embodiment. The weight of theterminal device 7 is about 400 to about 600 [g], and is 530 [g] in thepresent embodiment. Although the details will be described later, theterminal device 7 is configured so that it is easily held and operatedby the user even though it is such a relatively large terminal device(controller device) as described above.

The terminal device 7 includes an LCD 51 on the front surface (frontside) of the housing 50. The size of the screen of the LCD 51 ispreferably 5 inches or larger, and is herein 6.2 inches. The controllerdevice 7 of the present embodiment has such a configuration that it iseasily held and operated, and it is therefore easy to operate even if alarge LCD is provided. In other embodiments, the controller device 7 maybe of a relatively small size with the provision of a smaller LCD 51.The LCD 51 is provided near the center of the surface of the housing 50.Therefore, the user can hold and move the terminal device 7 whilelooking at the screen of the LCD 51 by holding opposing end portions ofthe housing 50 with respect to the LCD 51, as shown in FIGS. 10 and 11.While FIGS. 10 and 11 show an example in which the user holds theterminal device 7 in a landscape position (in a horizontally-orienteddirection) by holding left and right opposing end portions of thehousing 50 with respect to the LCD 51, the user can hold the terminaldevice 7 in a portrait position (in a vertically-oriented direction) asshown in FIGS. 12 and 13.

As shown in FIG. 8( a), the terminal device 7 includes a touch panel 52on the screen of the LCD 51 as an operation mechanism. In the presentembodiment, the touch panel 52 is a resistive-type touch panel. However,the touch panel is not limited to the resistive type, and may be a touchpanel of any type including, for example, a capacitive type, etc. Thetouch panel 52 may be of a single-touch type or a multi-touch type. Inthe present embodiment, a touch panel having the same resolution(detection precision) as the resolution of the LCD 51 is used as thetouch panel 52. However the resolution of the touch panel 52 does notalways raced to coincide with the resolution of the LCD 51. While atouch pen 60 is usually used for making inputs on the touch panel 52,the present invention is not limited to using the touch pen 60, and aninput may be made on the touch panel 52 with a finger of the user. Thehousing 50 is provided with a hole 60 a for accommodating the touch pen60 used for performing operations on the touch panel 52 (see FIG. 8(b)). While the hole 60 a is provided on the upper surface of the housing50 so that the touch pen 60 does not fall, it may be provided on theside surface or the bottom surface. Thus, since the terminal device 7includes the touch panel 52, the user can operate the touch panel 52while moving the terminal device 7. That is, the user can move thescreen of the LCD 51 while directly (by means of the touch panel 52)making an input on the screen.

As shown in FIG. 8, the terminal device 7 includes two analog sticks 53Aand 53B and a plurality of buttons (keys) 54A to 54M, as operationmechanisms (operation sections). The analog sticks 53A and 53B are eacha direction-specifying device. The analog sticks 53A and 53B are eachconfigured so that the movable member (stick portion) operated with afinger of the user can be slid in any direction (at any angle in the up,down, left, right and diagonal directions) with respect to the surfaceof the housing 50. That is, it is a direction input device which is alsocalled a slide pad. The movable member of each of the analog sticks 53Aand 53B may be of such a type that it is tilted in any direction withrespect to the surface of the housing 50. Since the present embodimentuse analog sticks of such a type that the movable members slide, theuser can operate the analog sticks 53A and 53B without significantlymoving the thumbs, and therefore operations can be made while thehousing 50 is held more firmly. When analog sticks of such a type thatthe movable members tilt are used as the analog sticks 53A and 53B, thedegree of input (the degree of tilt) is better perceived by the user,thus allowing the user to more easily perform precise operations.

The left analog stick 53A is provided on the left side of the screen ofthe LCD 51, and the right analog stick 53B is provided on the right sideof the screen of the LCD 51. Therefore, the user can make adirection-specifying input by using an analog stick with either the leftor the right hand. As shown in FIGS. 10 and 11, the analog sticks 53Aand 53B are provided at such positions that the user can operate themwhile holding the left and right portions of the terminal device 7 (theleft and right opposing end portions with respect to the LCD 51), andtherefore the user can easily operate the analog sticks 53A and 53B evenwhen holding and moving the terminal device 7.

The buttons 54A to 54L are operation mechanisms (operation sections) formaking predetermined inputs, and are keys that can be pressed. As willbe discussed below, the buttons 54A to 54L are provided at suchpositions that the user can operate them while holding the left andright portions of the terminal device 7 (see FIGS. 10 and 11).Therefore, the user can easily operate these operation mechanisms evenwhen holding and moving the terminal device 7.

As shown in FIG. 8( a), the cross button (direction-input button) 54Aand the buttons 54B to 54H and 54M, of the operation buttons 54A to 54L,are provided on the front surface of the housing 50. That is, thesebuttons 54A to 54H and 54M are provided at positions at which they canbe operated by the thumbs of the user (see FIGS. 10 and 11).

The cross button 54A is provided on the left side of the LCD 51 andunder the left analog stick 53A. That is, the cross button 54A isprovided at such a position that it can be operated with the left handof the user. The cross button 54A has a cross shape, and is a buttonwith which it is possible to specify at least up, down, left and rightdirections.

The buttons 54B to 54D are provided on the lower side of the LCD 51.These three buttons 54B to 54D are provided at positions at which theycan be operated with either the left or the right hand. The terminaldevice 7 includes the power button 54M for turning ON/OFF the power ofthe terminal device 7. The power of the game device 3 can be remotelyturned ON/OFF by operating the power button 54M. The power button 54M isprovided on the lower side of the LCD 51 as are the buttons 54B to 54D.The power button 54M is provided on the right side of the buttons 54B to54D. Thus, the power button 54M is provided at a position at which itcan be operated (easily operated) with the right hand. The four buttons54E to 54H are provided on the right side of the LCD 51 and under theright analog stick 53B. That is, the four buttons 54E to 54H areprovided at positions at which they can be operated with the right handof the user. Moreover, the four buttons 54E to 54H are provided on theupper, lower, left and right side (of the center position among the fourbuttons 54E to 54H). Therefore, with the terminal device 7, the fourbuttons 54E to 54H can also serve as buttons with which the userspecifies the up, down, left and right directions.

In the present embodiment, the analog sticks 53A and 53B are providedabove the cross button 54A and the buttons 54E to 54H. Here, the analogsticks 53A and 53B protrude beyond the cross button 54A and the buttons54E to 54H in the thickness direction (the y-axis direction). Therefore,if the positions of the analog stick 53A and the cross button 54A arereversed, the thumb of the user may inadvertently touch the analog stick53A when the user is operating the cross button 54A with the thumb. Asimilar problem occurs also when the positions of the analog stick 53Band the buttons 54E to 54H are reversed. In contrast, in the presentembodiment, since the analog sticks 53A and 53B are provided above thecross button 54A and the buttons 54E to 54H, the possibility that afinger may inadvertently touch the cross button 54A and the buttons 54Eto 54H when the user is operating the analog sticks 53A and 53B issmaller as compared with the above cases. Thus, in the presentembodiment, the possibility of erroneous operations can be reduced, andit is possible to improve the controllability of the terminal device 7.Note however that in other embodiments, the positions of the analogstick 53A and the cross button 54A may be reversed and the positions ofthe analog stick 53B and the buttons 54E to 54H may be reversed asnecessary.

Here, in the present embodiment, some operation sections (the analogsticks 53A and 53B, the cross button 54A, and the three buttons 54E to54G) are provided on the left and right opposing sides of the displaysection (the LCD 51) and above the center of the housing 50 in theup/down direction (y-axis direction). When operating these operationsections, the user primarily holds a portion of the terminal device 7that is above the center thereof in the up/down direction. If the userholds the lower portion of the housing 50 (particularly if the terminaldevice 7 has a relatively large size as in the present embodiment), theterminal device 7 to be held becomes unstable, making it more difficultfor the user to hold the terminal device 7. In contrast, in the presentembodiment, when operating the operation section, the user primarilyholds a portion of the terminal device 7 that is above the centerthereof in the up/down direction, and the housing 50 can be supportedfrom the sides by the palms. Therefore, the user can stably hold thehousing 50 and it is made easier to hold the terminal device 7, thusmaking it easier to operate the operation section. In other embodiments,operation sections are provided, at least one on the left and one on theright of the display section, above the center of the housing 50. Forexample, only the analog sticks 53A and 53B may be provided above thecenter of the housing 50. For example, in a case in which the crossbutton 54A is provided above the left analog stick 53A and the fourbuttons 54E to 54H are provided above the right analog stick 53B, thecross button 54A and the four buttons 54E to 54H may be provided abovethe center of the housing 50.

In the present embodiment, a projecting portion (an eaves portion 59) isprovided on the back side of the housing 50 (the side opposite to thefront surface where the LCD 51 is provided) (see FIGS. 8( c) and 9). Asshown in FIG. 8( c), the eaves portion 59 is a mountain-shaped memberwhich is projecting from the back surface of the generally plate-shapedhousing 50. The projecting portion has such a height (thickness) that itcan rest on fingers of the user holding the back surface of the housing50. The height of the projecting portion is preferably 10 to 25 [mm],and is 16.66 [mm] in the present embodiment. The bottom surface of theprojecting portion preferably has an inclination of 45° or more (morepreferably 60° or more) with respect to the back surface of the housing50 so that the projecting portion easily rests on fingers of the user.As shown in FIG. 8( c), the bottom surface of the projecting portion mayhave a larger inclination angle than the upper surface. As shown inFIGS. 10 and 11, the user can hold the terminal device 7 stably withoutgetting tired even if the terminal device 7 has a relatively large sizeby holding the terminal device 7 while resting fingers on the eavesportion 59 (placing the eaves portion 59 on the fingers). That is, theeaves portion 59 can be referred to as a supporting member by means ofwhich the housing 50 is supported by fingers, and can be referred toalso as a finger-resting portion.

The eaves portion 59 is provided above the center of the housing 50 withrespect to the up/down direction. The eaves portion 59 is provided onthe reverse side so as to generally correspond to the operation sections(the analog sticks 53A and 53B) which are provided on the front surfaceof the housing 50. That is, the projecting portion is provided so as toextend across an area on the reverse side including positionscorresponding to the operation sections which are provided respectivelyon the left side and on the right side of the display section.Therefore, when operating the operation section, the user can hold theterminal device 7 so as to support the eaves portion 59 with the middlefingers or the ring fingers (see FIGS. 10 and 11). Then, it is easier tohold the terminal device 7, and it is easier to operate the operationsections. In the present embodiment, since the projecting portion has aneaves-like shape extending in the left/right direction, the user canhold the terminal device 7 with the middle fingers or the ring fingersplaced along the bottom surface of the projecting portion, making iteasier to hold the terminal device 7. The eaves portion 59 is notlimited to the shape extending in the horizontal direction as shown inFIG. 9, as long as it is formed so that it (i.e., a portion thereof thatis projecting) extends in the left/right direction. In otherembodiments, the eaves portion 59 may extend in a direction that isslightly inclined from the horizontal direction. For example, the eavesportion 59 may be provided so as to be inclined upwardly (or downwardly)from the left and right opposing end portions toward the center.

The present embodiment employs the eaves portion 59 having a shape of aneaves as the projecting portion formed on the back surface of thehousing for the purpose of providing engagement holes to be describedbelow in the eaves portion 59, but the projecting portion may have anyother suitable shape. For example, in other embodiments, two projectingportions may be provided in the left and right opposing portions (withno projecting portion in the center of the left/right direction) on theback side of the housing 50 (see FIG. 32). In other embodiments, thecross-sectional shape (the shape along the cross section vertical to thex-axis direction) of the projecting portion may have an arched shape(which opens downward) so that the terminal device 7 can be more firmlysupported by the fingers of the user (so that the projecting portionmore firmly rests on the fingers).

The width of the projecting portion (the eaves portion 59) in theup/down direction may be of any value. For example, the projectingportion may be formed so as to extend to the top side of the housing 50.That is, the upper surface of the projecting portion may be formed atthe same position as the side surface on the upper side of the housing50. Then, the housing 50 has a 2-tiered structure with the thin lowerside and the thick upper side. As described above, the housing 50preferably includes a down-facing surface (the bottom surface of theprojecting portion) formed in the left and right opposing portions ofthe back surface. Then, the user can easily hold the controller devicewith fingers abutting against this surface. While the “down-facingsurface” may be provided at any position on the back surface of thehousing 50, it is preferably located above the center of the housing 50.

As shown in FIGS. 8( a), 8(b) and 8(c), a first L button 54I and a firstR button 54J are provided respectively in the right and left opposingportions on the upper surface of the housing 50. In the presentembodiment, the first L button 54I and the first R button 54J areprovided on diagonally upper portions (the left upper portion and theright upper portion) of the housing 50. Specifically, the first L button54I is provided at the left end of the upper side surface of theplate-like housing 50 so that it is exposed on the upper left sidesurface (in other words, it is exposed on both the upper and left sidesurfaces). The first R button 54J is provided at the right end of theupper side surface of the housing 50, and is exposed on the upper rightside surface (in other words, it is exposed on both the upper and rightside surfaces). Thus, the first L button 54I is provided at such aposition that it can be operated with the left index finger of the user,and the first R button 54J is provided at such a position that it can beoperated with the right index finger of the user (see FIG. 10). In otherembodiments, the operation sections provided respectively in the leftand right portions of the upper surface of the housing 50 do not have tobe provided at the left end and the right end, and may be provided atpositions other than the end portions. The operation sections may beprovided respectively on the left and right side surfaces of the housing50.

As shown in FIGS. 8( c) and 9, a second L button 54K and a second Rbutton 54L are provided on the projecting portion (the eaves portion59). The second L button 54K is provided near the left end of the eavesportion 59. The second R button 54L is provided near the right end ofthe eaves portion 59. Specifically, the second L button 54K is providedslightly toward the upper side in the left portion (the left portion asviewed from the front surface side) of the back surface of the housing50, and the second R button 54L is provided slightly toward the upperside in the right portion (the right portion as viewed from the frontsurface side) of the back surface of the housing 50. In other words, thesecond L button 54K is provided on the reverse side so as to (generally)correspond to the left analog stick 53A provided on the front surface,and the second R button 54L is provided on the reverse side so as to(generally) correspond to the right analog stick 53B provided on thefront surface. Thus, the second L button 54K is provided at a positionat which it can be operated with the left middle finger or left indexfinger of the user, and the second R button 54L is provided at aposition at which it can be operated with the right middle finger orright index finger of the user (see FIGS. 10 and 11). The second Lbutton 54K and the second R button 54L are provided on the upper surfaceof the eaves portion 59 as shown in FIG. 8( c). Therefore, the second Lbutton 54K and the second R button 54L have upwardly-facing(diagonally-upwardly-facing) button surfaces. It is believed that themiddle fingers or the index fingers will generally move in the up/downdirection when the user holds the terminal device 7, and it will beeasier for the user to press the second L button 54K and the second Rbutton 54L if the button surfaces are facing upward.

As described above, in the present embodiment, operation sections (theanalog sticks 53A and 53B) are provided respectively on the left sideand the right side of the display section (the LCD 51) above the centerof the housing 50, and other operation sections (the second L button 54Kand the second R button 54L) are provided on the back side of thehousing 50 so as to generally correspond respectively to the operationsections. Thus, since the operation sections and the other operationsections are provided on the front side and on the back side of thehousing 50 so as to generally correspond to each other, the user canhold the housing 50 so as to sandwich the housing 50 from the front sideand from the back side when operating these operation sections. Whenoperating these operation sections, the user holds a portion of thehousing 50 that is above the center thereof in the up/down direction,and therefore the terminal device 7 can be held in the upper portionthereof and the terminal device 7 can be supported by the palms (seeFIGS. 10 and 11). Thus, the user can stably hold the housing 50 in astate in which the user can operate at least four operation sections,and it is therefore possible to provide a controller device (theterminal device 7) which can be easily held by the user and which has agood controllability.

As described above, in the present embodiment, the user can easily holdthe terminal device 7 by holding the terminal device 7 with fingersabutting against the bottom surface of the projecting portion (the eavesportion 59). Since the second L button 54K and the second R button 54Lare provided on the upper surface of the projecting portion, the usercan easily operate these buttons in such a state as described above. Theuser can easily hold the terminal device 7 in the following manner, forexample.

That is, as shown in FIG. 10, the user can hold the terminal device 7with the ring fingers abutting against the bottom surface of the eavesportion 59 (the one-dot-chain line shown in FIG. 10) (so as to supportthe eaves portion 59 with the ring fingers). Then, the user can operatethe four buttons (the first L button 54I, the first R button 54J, thesecond L button 54K and the second R button 54L) with the index fingersand the middle fingers. For example, in a case in which required gameoperations are relatively complicated and many buttons are to be used,it is possible to easily operate many buttons by holding the terminaldevice 7 as shown in FIG. 10. Since the analog sticks 53A and 53B areprovided above the cross button 54A and the buttons 54E to 54H, the usercan advantageously operate the analog sticks 53A and 53B with the thumbswhen relatively complicated operations are required. In FIG. 10, theuser holds the terminal device 7 with the thumbs abutting against thefront surface of the housing 50, the index fingers against the uppersurface of the housing 50, the middle fingers against the upper surfaceof the eaves portion 59 on the back surface of the housing 50, the ringfingers against the bottom surface of the eaves portion 59, and thelittle fingers against the back surface of the housing 50. Thus, theuser can firmly hold the terminal device 7 as if to wrap around thehousing 50 from four directions.

As shown in FIG. 11, the user can also hold the terminal device 7 withthe middle fingers abutting against the bottom surface of the eavesportion 59 (the one-dot-chain line shown in FIG. 11). Then, the user caneasily operate two buttons (the second L button 54K and the second Rbutton 54L) with the index fingers. For example, in a case in whichrequired game operations are relatively simple and only a few buttonsare to be used, the terminal device 7 may be held as shown in FIG. 11.In FIG. 11, since the user can hold the lower side of the housing 50with two fingers (the ring finger and the little finger), it is possibleto firmly hold the terminal device 7.

In the present embodiment, the eaves portion 59 is provided so that thebottom surface thereof is located between the analog sticks 53A and 533and the cross button 54A and the four buttons 54E to 54H (so that it islocated on the lower side of the analog sticks 53A and 53B and above thecross button 54A and the four buttons 54E to 54H). Therefore, in a casein which the terminal device 7 is held with the ring fingers abuttingagainst the eaves portion 59 (FIG. 10), the analog sticks 53A and 53Bcan be easily operated with the thumbs, and in a case in which theterminal device 7 is held with the middle fingers abutting against theeaves portion 59 (FIG. 11), the cross button 54A and the four buttons54E to 54H can be easily operated with the thumbs. That is, in either ofthe two cases, the user can make a direction input operation whilefirmly holding the terminal device 7.

As described above, the user can also hold the terminal device 7 in aportrait position. That is, as shown in FIG. 12, the user can hold theterminal device 7 in a portrait position by holding the top side of theterminal device 7 with the left hand. As shown in FIG. 13, the user canhold the terminal device 7 in a portrait position by holding the bottomside of the terminal device 7 with the left hand. While FIGS. 12 and 13show the case in which the terminal device 7 is held with the left hand,it may be held with the right hand. Thus, since the user can hold theterminal device 7 with one hand, it is possible to for example performan operation in which the terminal device 7 is held with one hand whilean input is made to the touch panel 52 with the other hand.

In a case in which the terminal device 7 is held in a manner shown inFIG. 12, the user can firmly hold the terminal device 7 by havingfingers other than the thumbs (the middle fingers, the ring fingers andthe little fingers in FIG. 12) abutting against the bottom surface ofthe eaves portion 59 (the one-dot-chain line shown in FIG. 12).Particularly, in the present embodiment, since the eaves portion 59extends in the left/right direction (in the up/down direction in FIG.12), the user can abut fingers other than the thumbs against the eavesportion 59 and firmly hold the terminal device 7, irrespective of theposition along the top side of the terminal device 7 at which the userholds the terminal device 7. That is, in a case in which the terminaldevice 7 is used in a portrait position, the eaves portion 59 can beused as a grip. On the other hand, in a case in which the terminaldevice 7 is held in a manner shown in FIG. 13, the user can operate thebuttons 54B to 54D with the left hand. Therefore, it is possible forexample to operate the buttons 54B to 54D with the hand with which theterminal device 7 is held while making inputs to the touch panel 52 withthe other hand, thereby allowing for more operations.

With the terminal device 7 of the present embodiment, since theprojecting portion (the eaves portion 59) is provided on the backsurface, if the terminal device 7 is put down with the screen of the LCD51 (the front surface of the housing 50) facing up, the screen isslightly inclined. Therefore, the screen is more easily seen with theterminal device 7 put down. Input operations to the touch panel 52 aremore easily performed with the terminal device 7 put down. In otherembodiments, an additional projecting portion having generally the sameheight as the eaves portion 59 may be formed on the back surface of thehousing 50. Then, with the screen of the LCD 51 facing up, the terminaldevice 7 can be put down so that the screen is horizontal with theprojecting portions in contact with the floor surface. The additionalprojecting portion may be a removable (or foldable) member. Then, theterminal device can be put down with the screen either slightly inclinedor with the screen horizontal. That is, in a case in which the terminaldevice 7 is put down and used, the eaves portion 59 can be used as a legportion.

The buttons 54A to 54L are each assigned a function in accordance withthe game program. For example, the cross button 54A and the buttons 54Eto 54H may be used for direction-specifying operations, selectionoperations, etc., whereas the buttons 54B to 54E may be used for OKbutton operations, cancel button operations, etc. The terminal device 7may include a button for turning ON/OFF the power of the LCD 51, and abutton for performing a connection setting (pairing) with the gamedevice 3.

As shown in FIG. 8( a), the terminal device 7 includes the markersection 55 including a marker 55A and a marker 55B on the front surfaceof the housing 50. The marker section 55 is provided on the upper sideof the LCD 51. The marker 55A and the marker 55B are each formed by oneor more infrared LEDs, as are the markers 6R and 6L of the marker device6. The infrared LEDs of the markers 55A and 55B are provided inside awindow portion that is transmissive to infrared light. The markersection 55 is used for the game device 3 to calculate the movement,etc., of the controller 5, as is the marker device 6 described above.The game device 3 can control the lighting of the infrared LEDs of themarker section 55.

The terminal device 7 includes a camera 56 as an image-capturingmechanism. The camera 56 includes an image-capturing element (e.g., aCCD image sensor, a CMOS image sensor, or the like) having apredetermined resolution, and a lens. As shown in FIG. 8, the camera 56is provided on the front surface of the housing 50 in the presentembodiment. Therefore, the camera 56 can capture an image of the face ofthe user holding the terminal device 7, and can capture an image of theuser playing a game while looking at the LCD 51, for example. In thepresent embodiment, the camera 56 is provided between the two markers55A and 55B.

The terminal device 7 includes a microphone 69 as a sound inputmechanism. A microphone hole 50 c is provided on the front surface ofthe housing 50. The microphone 69 is provided inside the housing 50behind the microphone hole 50 c. The microphone 69 detects sounds aroundthe terminal device 7 such as the voice of the user.

The terminal device 7 includes a speaker 77 as a sound output mechanism.As shown in FIG. 8( d), speaker holes 57 are provided in a lower portionof the front surface of the housing 50. The output sounds from thespeaker 77 are outputted from the speaker holes 57. In the presentembodiment, the terminal device 7 includes two speakers, and the speakerholes 57 are provided at the respective positions of each of the leftspeaker and the right speaker. The terminal device 7 includes a knob 64for adjusting the sound volume of the speaker 77. The terminal device 7includes a sound output terminal 62 for receiving a sound output sectionsuch as an earphone connected thereto. Although the sound outputterminal 62 and the knob 64 are provided on the upper side surface ofthe housing 50 considering the fact that the additional device isconnected to the lower side surface of the housing, they mayalternatively be provided on the left or right side surface or on thelower side surface.

The housing 50 includes a window 63 through which an infrared signalfrom an infrared communication module 82 is emitted to the outside ofthe terminal device 7. The window 63 is herein provided on the upperside surface of the housing 50 so that the infrared signal is emitted ina forward direction of the user when the user holds the opposing sidesof the LCD 51. In other embodiments, the window 63 may be provided atany position such as, for example, on the back surface of the housing50.

The terminal device 7 includes an extension connector 58 via whichanother device can be connected to the terminal device 7. The extensionconnector 58 is a communication terminal for exchanging data(information) with another device connected to the terminal device 7. Inthe present embodiment, the extension connector 58 is provided on thelower side surface of the housing 50 as shown in FIG. 8( d). Theadditional device connected to the extension connector 58 may be anydevice, and may be, for example, a game-specific controller (gun-shapedcontroller, etc.) or an input device such as a keyboard. The extensionconnector 58 may be omitted if there is no need to connect an additionaldevice to terminal device 7. The extension connector 58 may include aterminal for supplying power to the additional device or a terminal forcharging.

In addition to the extension connector 58, the terminal device 7includes a charging terminal 66 for obtaining power from an additionaldevice. When the charging terminal 66 is connected to a stand 210 to bedescribed below, power is supplied from the stand 210 to the terminaldevice 7. In the present embodiment, the charging terminal 66 isprovided on the lower side surface of the housing 50. Therefore, whenthe terminal device 7 and an additional device (e.g., an input device200 shown in FIG. 15 or an input device 220 shown in FIG. 17) areconnected to each other, it is possible to supply power from one to theother, in addition to exchanging information therebetween, via theextension connector 58. Thus, with the provision of the chargingterminal 66 around (on the left and right opposing sides of) theextension connector 58, it is possible to supply power, as well asexchange information, when the terminal device 7 and an additionaldevice are connected to each other. The terminal device 7 includes acharging connector, and the housing 50 includes a cover portion 61 forprotecting the charging connector. The charging connector can beconnected to a charger 86 to be described below, and power is suppliedfrom the charger 86 to the terminal device 7 when the charging connectoris connected to the charger. Although the charging connector (the coverportion 61) is provided on the upper side surface of the housing 50 inview of the fact that an additional device is connected to the lowerside surface of the housing in the present embodiment, it may beprovided on the left and right side surfaces or the lower side surface.

The terminal device 7 includes a battery cover 67 which can be attachedto and removed from the housing 50. A battery (a battery 85 shown inFIG. 14) is placed inside the battery cover 67. In the presentembodiment, the battery cover 67 is provided on the back side of thehousing 50, below the projecting portion (the eaves portion 59).

The housing 50 of the terminal device 7 includes holes 65 a and 65 bthrough which a strap cord can be tied to the terminal device 7. Asshown in FIG. 8( d), the holes 65 a and 65 b are provided on the bottomsurface of the housing 50 in the present embodiment. Two holes 65 a and65 b are provided in the present embodiment, one in the left portion andanother in the right portion of the housing 50. Specifically, the hole65 a is provided on the left side of the center of the bottom surface ofthe housing 50, and the hole 65 b is provided on the right side of thecenter of the bottom surface of the housing 50. The user can tie a strapto one of the holes 65 a and 65 b, and fasten the strap to the wrist ofthe user. Then, even if the user drops the terminal device 7 or if theterminal device 7 comes off the hand, the terminal device 7 is preventedfrom falling or hitting other objects. In the present embodiment, sincethe holes are provided both in the left and right portions, the user canconveniently fasten a strap to either hand.

With the terminal device 7 shown in FIGS. 8 to 13, the shape of eachoperation button, the shape of the housing 50, the number and thepositions of the components, etc., are merely illustrative, and thepresent invention can be realized with other shapes, numbers, andpositions.

Next, an internal configuration of the terminal device 7 will bedescribed with reference to FIG. 14. FIG. 14 is a block diagram showingan internal configuration of the terminal device 7. As shown in FIG. 14,in addition to the configuration shown in FIG. 8, the terminal device 7includes a touch panel controller 71, a magnetic sensor 72, theacceleration sensor 73, the gyrosensor 74, a user interface controller(UI controller) 75, a codec LSI 76, the speaker 77, a sound IC 78, themicrophone 79, a wireless module 80, an antenna 81, an infraredcommunication module 82, a flash memory 83, a power supply IC 84, abattery 85, and a vibrator 89. These electronic components are mountedon an electronic circuit board and accommodated in the housing 50.

The UI controller 75 is a circuit for controlling the input/output ofdata to/from various types of input/output sections. The UI controller75 is connected to the touch panel controller 71, an analog stick 53(the analog sticks 53A and 53B), an operation button 54 (the operationbuttons 54A to 54L), the marker section 55, the magnetic sensor 72, theacceleration sensor 73, the gyrosensor 74, and the vibrator 89. The UIcontroller 75 is connected to the codec LSI 76 and the extensionconnector 58. The power supply IC 84 is connected to the UI controller75, and power is supplied to various sections via the UI controller 75.The built-in battery 85 is connected to a power supply IC 84 to supplypower. The charger 86 or a cable with which power can be obtained froman external power source can be connected to the power supply IC 84 viaa charging connector, and the terminal device 7 can receive power supplyfrom or be charged by an external power source using the charger 86 orthe cable. The terminal device 7 may be charged by attaching theterminal device 7 to a cradle (not shown) having a charging function.That is, although not shown in the drawings, a cradle (the stand 210shown in FIG. 20) with which power can be obtained from an externalpower supply can be connected to the power supply IC 84 via the chargingterminal 66, and the terminal device 7 can receive power supply from orbe charged by an external power supply using the cradle.

The touch panel controller 71 is a circuit connected to the touch panel52 for controlling the touch panel 52. The touch panel controller 71generates touch position data of a predetermined format based on signalsfrom the touch panel 52, and outputs it to the UI controller 75. Thetouch position data represents, for example, the coordinates of aposition on the input surface of the touch panel 52 at which an input ismade. The touch panel controller 71 reads a signal from the touch panel52 and generates touch position data at a rate of once per apredetermined amount of time. Various control instructions for the touchpanel 52 are outputted from the UI controller 75 to the touch panelcontroller 71.

The analog stick 53 outputs, to the UI controller 75, stick datarepresenting the direction and the amount of slide (or tilt) of thestick portion operated with a finger of the user. The operation button54 outputs, to the UT controller 75, operation button data representingthe input status of each of the operation buttons 54A to 54L (e.g.,whether it is pressed).

The magnetic sensor 72 detects the azimuthal direction by sensing thesize and direction of the magnetic field. Azimuthal direction datarepresenting the detected azimuthal direction is outputted to the UIcontroller 75. Control instructions for the magnetic sensor 72 areoutputted from the UI controller 75 to the magnetic sensor 72. Whilethere are sensors using an MI (magnetic impedance) element, a fluxgatesensor, a Hall element, a GMR (giant magneto-resistive) element, a TMR(tunnel magneto-resistance) element, an AMR (anisotropicmagneto-resistive) element, etc., the magnetic sensor 72 may be anysensor as long as it is possible to detect the azimuthal direction.Strictly speaking, in a place where there is a magnetic field other thanthe geomagnetic field, the obtained azimuthal direction data does notrepresent the azimuthal direction. Nevertheless, if the terminal device7 moves, the azimuthal direction data changes, and it is thereforepossible to calculate the change in the attitude of the terminal device7.

The acceleration sensor 73 is provided inside the housing 50 fordetecting the magnitude of the linear acceleration along each of thedirections of the three axes (the x, y and z axes shown in FIG. 8( a)).Specifically, the acceleration sensor 73 detects the magnitude of thelinear acceleration along each of the axes, where the x axis lies in thelongitudinal direction of the housing 50, the y axis lies in thedirection vertical to the surface of the housing 50, and the z axis liesin the width direction of the housing 50. Acceleration data representingthe detected acceleration is outputted to the UI controller 75. Controlinstructions for the acceleration sensor 73 are outputted from the UIcontroller 75 to the acceleration sensor 73. While the accelerationsensor 73 is assumed to be a capacitive-type MEMS-type accelerationsensor, for example, in the present embodiment, other types ofacceleration sensors may be employed in other embodiments. Theacceleration sensor 73 may be an acceleration sensor for 1-axis or2-axis detection.

The gyrosensor 74 is provided inside the housing 50 for detectingangular velocities about the three axes, i.e., the x-axis, the y-axisand the z-axis. Angular velocity data representing the detected angularvelocities is outputted to the UI controller 75. Control instructionsfor a gyrosensor 74 are outputted from the UI controller 75 to thegyrosensor 74. The number and combination of gyrosensors used fordetecting angular velocities about three axes may be any number andcombination, and the gyrosensor 74 may be formed by a 2-axis gyrosensorand a 1-axis gyrosensor, as is the gyrosensor 48. The gyrosensor 74 maybe a gyrosensor for 1-axis or 2-axis detection.

The vibrator 89 is, for example, a vibration motor or a solenoid, and isconnected to the UI controller 75. The terminal device 7 is vibrated byactuation of the vibrator 89 based on a command from the UI controller75. Therefore, the vibration is conveyed to the player's hand holdingthe terminal device 7, and thus a so-called vibration-feedback game isrealized.

The UI controller 75 outputs, to the codec LSI 76, operation dataincluding touch position data, stick data, operation button data,azimuthal direction data, acceleration data, and angular velocity datareceived from various components described above. If another device isconnected to the terminal device 7 via the extension connector 58, datarepresenting an operation performed on the other device may be furtherincluded in the operation data.

The codec LSI 76 is a circuit for performing a compression process ondata to be transmitted to the game device 3, and an expansion process ondata transmitted from the game device 3. The LCD 51, the camera 56, thesound IC 78, the wireless module 80, the flash memory 83, and theinfrared communication module 82 are connected to the codec LSI 76. Thecodec LSI 76 includes a CPU 87 and an internal memory 88. While theterminal device 7 does not itself perform game processes, the terminaldevice 7 needs to execute a minimal program for the management thereofand for the communication. When the terminal device 7 is started up, aprogram stored in the flash memory 83 is read out to the internal memory88 and executed by the CPU 87 upon power-up. Some area of the internalmemory 88 is used as the VRAM for the LCD 51.

The camera 56 captures an image in response to an instruction from thegame device 3, and outputs the captured image data to the codec LSI 76.Control instructions for the camera 56, such as an image-capturinginstruction, are outputted from the codec LSI 76 to the camera 56.Camera 56 can also record video. That is, the camera 56 can repeatedlycapture images and repeatedly output the image data to the codec LSI 76.

The sound IC 78 is a circuit connected to the speaker 77 and themicrophone 79 for controlling input/output of sound data to/from thespeaker 77 and the microphone 79. That is, when sound data is receivedfrom the codec LSI 76, the sound IC 78 outputs sound signals obtained byperforming D/A conversion on the sound data to the speaker 77 so thatsound is outputted from the speaker 77. The microphone 79 detects soundspropagated to the terminal device 7 (the sound of the user, etc.), andoutputs sound signals representing such sounds to the sound IC 78. Thesound IC 78 performs A/D conversion on the sound signals from themicrophone 79 to output sound data of a predetermined format to thecodec LSI 76.

The codec LSI 76 transmits, as terminal operation data, image data fromthe camera 56, sound data from the microphone 79 and operation data fromthe UI controller 75 to the game device 3 via the wireless module 80. Inthe present embodiment, the codec LSI 76 performs a compression processsimilar to that of the codec LSI 27 on the image data and the sounddata. The terminal operation data and the compressed image data andsound data are outputted, as transmit data, to the wireless module 80.The antenna 81 is connected to the wireless module 80, and the wirelessmodule 80 transmits the transmit data to the game device 3 via theantenna 81. The wireless module 80 has a similar function to that of theterminal communication module 28 of the game device 3. That is, thewireless module 80 has a function of connecting to a wireless LAN by ascheme in conformity with the IEEE 802.11n standard, for example. Thetransmitted data may be encrypted as necessary or may not be encrypted.

As described above, the transmit data transmitted from the terminaldevice 7 to the game device 3 includes operation data (the terminaloperation data), image data, and sound data. In a case in which anotherdevice is connected to the terminal device 7 via the extension connector58, data received from the other device may be further included in thetransmit data. The infrared communication module 82 establishes infraredcommunication in conformity with the IRDA standard, for example, withthe other device. The codec LSI 76 may transmit, to the game device 3,data received via infrared communication while it is included in thetransmit data as necessary.

As described above, compressed image data and sound data are transmittedfrom the game device 3 to the terminal device 7. These data are receivedby the codec LSI 76 via the antenna 81 and the wireless module 80. Thecodec LSI 76 expands the received image data and sound data. Theexpanded image data is outputted to the LCD 51, and images are displayedon the LCD 51. That is the codec LSI 76 (the CPU 87) displays thereceived image data on the display section. The expanded sound data isoutputted to the sound IC 78, and the sound IC 78 outputs sounds fromthe speaker 77.

In a case in which control data is included in data received from thegame device 3, the codec LSI 76 and the UI controller 75 give controlinstructions to various sections in accordance with the control data. Asdescribed above, the control data is data representing controlinstructions for the components of the terminal device 7 (the camera 56,the touch panel controller 71, the marker section 55, sensors 62 to 64,and the infrared communication module 82 in the present embodiment). Inthe present embodiment, control instructions represented by control datamay be instructions to activate the operation of the components ordeactivate (stop) the operation thereof. That is, components that arenot used in a game may be deactivated in order to reduce the powerconsumption, in which case it is ensured that data from the deactivatedcomponents are not included in the transmit data transmitted from theterminal device 7 to the game device 3. For the marker section 55, whichis an infrared LED, the control can be done simply by turning ON/OFF thepower supply thereto.

While the terminal device 7 includes operation mechanisms such as thetouch panel 52, an analog stick 53 and the operation button 54, asdescribed above, in other embodiments, other operation mechanisms may beincluded instead of, or in addition to, these operation mechanisms.

While the terminal device 7 includes the magnetic sensor 72, theacceleration sensor 73 and the gyrosensor 74 as sensors for calculatingmovement of the terminal device 7 (including the position and theattitude thereof, or changes in the position and the attitude thereof),it may only include one or two of these sensors in other embodiments. Inother embodiments, other sensors may be included instead of, or inaddition to, these sensors.

While the terminal device 7 includes the camera 56 and the microphone79, it may not include the camera 56 and the microphone 79 or it mayinclude only one of them in other embodiments.

While the terminal device 7 includes the marker section 55 as aconfiguration for calculating the positional relationship between theterminal device 7 and the controller 5 (the position and/or attitude,etc., of the terminal device 7 as seen from the controller 5), it maynot include the marker section 55 in other embodiments. In otherembodiments, the terminal device 7 may include other mechanisms as aconfiguration for calculating the positional relationship. For example,in other embodiments, the controller 5 may include a marker section, andthe terminal device 7 may include an image-capturing element. Moreover,in such a case, the marker device 6 may include an image-capturingelement, instead of an infrared LED.

(Configuration of Additional Device)

Next, an example of an additional device that can be attached(connected) to the terminal device 7 will be described with reference toFIGS. 15 to 20. The additional device may have any function. Forexample, the additional device may be an additional controller deviceattached to the terminal device 7 for predetermined operations, acharger for supplying power to the terminal device 7, or a stand forholding the terminal device 7 so that the terminal device 7 stands in apredetermined attitude.

As shown in FIGS. 8( d) and 9, engagement holes 59 a and 59 b with whichtab portions of an additional device can engage are provided on thebottom surface of the projecting portion (the eaves portion 59). Theengagement holes 59 a and 59 b are used when connecting an additionaldevice to the terminal device 7. That is, the additional device includestab portions which can engage with the engagement holes 59 a and 59 b,and when connecting the additional device to the terminal device 7, thetab portions are engaged with the engagement holes 59 a and 59 b,thereby securing the terminal device 7 and the additional device witheach other. Threaded holes may be further provided inside the engagementholes 59 a and 59 b so that the additional device can be securely fixedby screws. The projecting portion provided on the back surface of theterminal device 7 is herein the eaves portion 59 having an eaves-likeshape. That is, the eaves portion 59 is provided so as to extend in theleft/right direction. As shown in FIG. 9, the engagement holes 59 a and59 b are provided near the center (with respect to the left/rightdirection) of the bottom surface of the eaves portion 59. While thenumber of the engagement holes 59 a and 59 b provided on the bottomsurface of the eaves portion 59 is not limited to any particular number,if there is one engagement hole, it is preferably provided at the centerof the eaves portion 59, and if there are a plurality of engagementholes, they are preferably provided in left-right symmetry. Then, theadditional device can be stably connected while evenly maintaining theleft-right balance. In a case in which the engagement holes are providednear the center, the size of the additional device can be reduced ascompared with a case in which they are provided at the left and rightopposing ends. Thus, the eaves portion 59 can be used as a member forengaging the additional device.

In the present embodiment, engagement holes 50 a and 50 b are providedon the bottom surface of the housing 50 as shown in FIG. 8( d).Therefore, in a case in which the additional device is connected to theterminal device 7, four tab portions are respectively engaged with fourengagement holes, thereby securing the terminal device 7 and theadditional device with each other. Thus, the additional device can bemore securely connected to the terminal device 7. Threaded holes may beprovided also inside the engagement holes 50 a and 50 b so that theadditional device can be screwed thereto. In other embodiments, theengagement holes provided in the housing may be in any arrangement.

FIGS. 15 and 16 are diagrams showing an example in which the additionaldevice is attached to the terminal device 7. FIG. 15 is a diagramshowing the terminal device 7 and an input device 200 as seen from thefront surface side of the terminal device 7, and FIG. 16 is a diagramshowing the terminal device 7 and the input device 200 as seen from theback surface side of the terminal device 7. In FIGS. 15 and 16, theinput device 200, which is an example of the additional device, isattached to the terminal device 7.

The input device 200 includes a first grip portion 200 a and a secondgrip portion 200 b. Each of the grip portions 200 a and 200 b has abar-like (pillar-like) shape, and can be held by one hand of the user.The user can use the input device 200 (and the terminal device 7) byholding only one of the grip portions 200 a and 200 b, or use the inputdevice 200 by holding both. The input device 200 may include only onegrip portion. The input device 200 includes a support portion 205. Inthe present embodiment, the support portion 205 supports the reversesurface (back surface) of the terminal device 7. Specifically, thesupport portion 205 includes four tab portions (protruding portions),and the four tab portions can be engaged with the engagement holes 50 a,50 b, 59 a and 59 b, respectively.

In a case in which the input device 200 is connected to the terminaldevice 7 as shown in FIG. 15, the four tab portions are engaged with thefour engagement holes 50 a, 50 b, 59 a and 59 b, respectively, therebysecuring the terminal device 7 and the additional device with eachother. Thus, the input device 200 can be securely fixed to the terminaldevice 7. In other embodiments, the input device 200 may be moresecurely fixed to the terminal device 7 by screwing together the inputdevice 200 and the terminal device 7, in addition to (or instead of) theengagement between the tab portions and the engagement holes. Whilescrewing may be done at any position, the support portion 205 of theinput device 200, which lies against the reverse surface of the housing50, and the eaves portion 59 may be screwed together, for example.

As described above, in the present embodiment, the additional device canbe firmly fixed to the terminal device 7 by the engagement holes 59 aand 59 b. Since the terminal device 7 includes sensors (the magneticsensor 72, the acceleration sensor 73, and the gyrosensor 74) fordetecting the movement and the inclination of the terminal device 7, theterminal device 7 itself can be moved around during use. For example, ina case in which the input device 200 is connected to the terminal device7 shown in FIGS. 15 and 16, the user may move the input device 200 as ifit were a gun while holding the grip portion 200 a and/or the gripportion 200 b of the input device 200. In a case in which the terminaldevice 7 itself is expected to be moved around as in the presentembodiment, it is particularly advantageous to firmly fix the additionaldevice by means of the engagement holes 59 a and 59 b.

In the present embodiment, the support portion 205 detachably supportsthe terminal device 7 so that the screen of the LCD 51 is in a generallyvertical direction when the first grip portion 200 a (or the second gripportion 200 b) is in the vertical direction. The grip portions 200 a and200 b are formed so as to extend generally parallel to the displaysection of the terminal device 7 connected to the input device 200 (thefront surface of the housing 50). In other words, the grip portions 200a and 200 b are formed so as to extend in the up/down direction of thedisplay section of the terminal device 7 connected to the input device200. Thus, the input device 200 is connected to the terminal device 7 insuch an attitude that the display section of the terminal device 7 facestoward the user (when the user holds the input device 200). Since theuser can have the screen of the display section facing toward the userby holding (at least one of) the grip portions 200 a and 200 b so thatthey extend in a generally vertical direction, the user can makeoperations using the input device 200 while looking at the screen of thedisplay section. Although the second grip portion 200 b is in adirection generally parallel to the first grip portion 200 a in thepresent embodiment, at least one grip portion may be formed to be in adirection generally parallel to the screen of the LCD 51 in otherembodiments. Then, by holding that grip portion, the user can easilyhold the input device 200 (and the terminal device 7) so that the LCD 51faces toward the user.

In the above embodiment, the support portion 205 is provided on aconnection member 206 which connects the first grip portion 200 a andthe second grip portion 200 b to each other. That is, since the supportportion 205 is provided between the two grip portions 200 a and 200 b,the terminal device 7 connected to the input device 200 is providedbetween the two grip portions 200 a and 200 b. Then, since the center ofgravity of the controller device (controller system) including theterminal device 7 and the input device 200 lies between the two gripportions 200 a and 200 b, the user can easily hold the controller deviceby gripping the two grip portions 200 a and 200 b. In the aboveembodiment, one grip portion (the first grip portion 200 a) is providedat a position on the front side of the screen of the terminal device 7attached to the input device 200, and the other grip portion (the secondgrip portion 200 b) is provided at a position on the backside of thescreen. Therefore, the user can easily hold the controller device byholding the two grips as if to hold a gun with one hand on the frontside of the screen and the other on the back side of the screen.Therefore, the controller device is particularly suitable for a shootinggame, or the like, in which game operations are performed while assumingthat the controller device is a gun, for example.

The input device 200 includes a first button 201, a second button 202, athird button 203, and a stick 204 as operation sections. Each of thebuttons 201 to 203 is a button (key) that can be pressed by the user.The stick 204 is a direction-specifying device. The operation sectionsare preferably provided at positions where they can be operated withfingers of the hand of the user holding a grip portion. In the presentembodiment, the first button 201, the second button 202 and the stick204 are provided at positions where they can be operated with the thumbor the index finger of the hand holding the first grip portion 200 a.The third button 203 is provided at a position where it can be operatedwith the index finger of the hand holding the second grip portion 200 b.

The input device 200 may include an image-capturing device(image-capturing section). For example, the input device 200 may have aconfiguration similar to that of the image capturing/processing section35 of the controller 5. Then, the image-capturing element of the imagecapturing/processing section may be provided in a direction forcapturing an image in the forward direction of the input device 200 (inthe backward direction of the screen of the terminal device 7). Forexample, an infrared filter may be provided at a position of the thirdbutton 203 instead of the third button 203, and an image-capturingelement may be provided behind the infrared filter. Then, if the userholds the input device 200 so that the front side thereof faces towardthe television 2 the marker device 6), the game device 3 can calculatethe direction and the position of the input device 200. Thus, the usercan perform operations of directing the input device 200 in an intendeddirection, and the user can perform intuitive and easy operations usingthe input device 200. The input device 200 may include a camera similarto the camera 56, instead of the image capturing/processing section.Then, as with the image-capturing element, the camera may be provided ina direction for capturing an image in the forward direction of the inputdevice 200. Then, if the user holds the input device 200 so that thefront side thereof faces toward the television 2 (the marker device 6),it is possible to capture an image in the opposite image-capturingdirection to that with the camera 56 of the terminal device 7.

The input device 200 includes a connector (not shown), and the connectoris connected to the extension connector 58 of the terminal device 7 whenthe terminal device 7 is attached to the input device 200. Thus, it ispossible to exchange data between the input device 200 and the terminaldevice 7. For example, data representing operations performed on theinput device 200 and data representing image-capturing results obtainedby the image-capturing device may be transmitted to the terminal device7. Then, the terminal device 7 may wirelessly transmit, to the gamedevice 3, operation data representing operations performed on theterminal device 7 and data transmitted from the input device. The inputdevice 200 may include a charging terminal which is connected to thecharging terminal 66 of the terminal device 7 when the terminal device 7is attached to the input device 200. Then, when the terminal device 7 isattached to the input device 200, power can be supplied from one deviceto the other. For example, the input device 200 may be connected to thecharger, and the terminal device 7 may be charged by obtaining powerfrom the charger via the input device 200.

The input device 200 may have a configuration as follows, for example.FIG. 17 is a diagram showing another example of an input device. FIGS.18 and 19 are diagram showing an input device 220 shown in FIG. 17attached to the terminal device 7. FIG. 18 is a diagram showing theterminal device 7 and the input device 220 as seen from the back surfaceside of the terminal device 7, and FIG. 19 is a diagram showing theterminal device 7 and the input device 220 as seen from the frontsurface side of the terminal device 7. For example, the input device 220shown in FIG. 17 may be attached to the terminal device 7. The inputdevice 220 will now be described. In FIGS. 17 to 20, like elements tothose of the input device 200 shown in FIGS. 15 and 16 will be denotedby like reference numerals to those used in FIGS. 15 and 16 and will notbe further described below.

As shown in FIG. 17, the input device 220 includes the first gripportion 200 a and the second grip portion 200 b similar to those of theinput device 200. Therefore, the user can use the input device 220 (andthe terminal device 7) by holding only one of the grip portions 200 aand 200 b, or use the input device 220 by holding both.

The input device 220 includes the support portion 205 similar to that ofthe input device 200. The support portion 205 includes four tab portions(only three tab portions 205 a to 205 c are shown in FIG. 17) as doesthe support portion of the input device 200. The upper two tab portions205 a and 205 b, of the four tabs, can be engaged with the engagementholes 59 a and 59 b, respectively, of the terminal device 7. Theremaining two lower tab portions can be engaged with the engagementholes 50 a and 50 b, respectively, of the terminal device 7. The tabportion not shown is provided in symmetry with the tab portion 205 cwith respect to the left/right direction (the left/right direction ofthe terminal device 7 attached to the support portion 205).

In a case in which the input device 220 is connected to the terminaldevice 7 as shown in FIGS. 18 and 19, the four tab portions are engagedwith the four engagement holes 50 a, 50 h, 59 a and 59 b, respectively,thereby securing the terminal device 7 and the input device 220 witheach other. Thus, the input device 220 can be securely fixed to theterminal device 7. In other embodiments, the input device 220 may bemore securely fixed to the terminal device 7 by screwing together theinput device 220 and the terminal device 7, in addition to (or insteadof) the engagement between the tab portions and the engagement holes.For example, threaded holes may be provided inside the engagement holes50 a and 50 b, and the two lower tab portions may be screwed to theengagement holes 50 a and 50 b. Screwing may be done at any position.

As with the input device 200, the input device 220 can also be firmlyfixed to the terminal device 7 as described above.

As with the input device 200, the support portion 205 of the inputdevice 220 detachably supports the terminal device 7 so that the screenof the LCD 51 is in a generally vertical direction when the first gripportion 200 a (or the second grip portion 200 b) is in the verticaldirection. The grip portions 200 a and 200 b are formed so as to extendgenerally parallel to the display section of the terminal device 7connected to the input device 220 (the front surface of the housing 50).Therefore, since the user can have the screen of the display sectionfacing toward the user by holding (at least one of) the grip portions200 a and 200 b so that they extend in a generally vertical direction,the user can make operations using the input device 220 while looking atthe screen of the display section. As with the input device 200, thesupport portion 205 of the input device 220 supports the terminal device7 above the grip portions, and therefore the screen will be arranged sothat it is easy for the user to view as the user holds the gripportions. In other embodiments, at least one grip portion may be formedin a direction generally parallel to the screen of the LCD 51.

The shape of the connecting portion of the input device 220 is differentfrom that of the input device 200. A connecting portion 209 shown inFIG. 17 is connected to two, upper and lower, positions of the firstgrip portion 200 a and is also connected to an upper portion (upper end)of the second grip portion 200 b. As with the input device 200, theconnecting portion 209 of the input device 220 is formed so as toprotrude forward from the second grip portion 200 b. As with the inputdevice 200, the support portion 205 of the input device 220 is alsoprovided on a connection member 209 which connects the first gripportion 200 a and the second grip portion 200 b to each other.Therefore, the user can easily hold the controller device by grippingthe two grip portions 200 a and 200 b.

The connecting portion 209 includes a member which extends downwardlyfrom the connecting portion with the support portion 205. This memberextends in a generally vertical direction when the screen of the LCD 51of the terminal device 7 connected to the support portion 205 is in agenerally vertical direction. That is, this member is generally parallelto the grip portions 200 a and 200 b. Therefore, also when this memberis held as a grip portion, the user can make operations using the inputdevice 200 while looking at the screen of the LCD 51 by holding thismember in a generally vertical direction. Since this member is providedbelow the support portion 205, the screen will be arranged so that it iseasy for the user to view as the user holds this member.

Also with the input device 220, as with the input device 200, one gripportion (the first grip portion 200 a) is provided at a position on thefront side of the screen of the terminal device 7 attached to the inputdevice 220 while the other grip portion (the second grip portion 200 b)is provided at a position on the back side of the screen. Therefore, aswith the input device 200, one can easily hold the input device 220 asif to hold a gun, and the controller device is particularly suitable fora shooting game, or the like, in which game operations are performedwhile assuming that the controller device is a gun.

The input device 220 includes, as an operation section, a fourth button207, in addition to the second button 202 and the stick 204 which aresimilar to those of the input device 200. As with the input device 200,the second button 202 and the stick 204 are provided above the firstgrip portion 200 a. The fourth button 207 is a button (key) that can bepressed by the user. The fourth button 207 is provided above the secondgrip portion 200 b. That is, the fourth button 207 is provided at aposition where it can be operated with the index finger, or the like, ofthe hand holding the second grip portion 200 b.

The input device 220 includes an image-capturing element(image-capturing device). Here, the input device 220 has a similarconfiguration to that of the image capturing/processing section 35 ofthe controller 5. The image-capturing element of the imagecapturing/processing section is provided in such a direction as tocapture an image in the forward direction of the input device 220 (inthe backward direction of the screen of the terminal device 7).Specifically, a window portion (infrared filter) 208 is provided in thefront end portion of the input device 220 (the front end portion of aconnecting portion 206), and the image-capturing element is providedbehind the window portion 208 in such a direction as to capture an imagein the forward direction of the window portion 208. As described above,if the user holds the input device 220 so that the front side thereoffaces toward the television 2 (the marker device 6), the game device 3can calculate the direction and the position of the input device 220.Thus, the user can perform operations of directing the input device 220in an intended direction, and the user can perform intuitive and easyoperations using the input device 220.

The input device 220 may include a camera similar to the camera 56,instead of the image capturing/processing section. Then, if the userholds the input device 220 so that the front side thereof faces towardthe television 2 (the marker device 6), it is possible to capture animage in the opposite image-capturing direction to that with the camera56 of the terminal device 7.

As with the input device 200, the input device 220 includes a connector(not shown), and the connector is connected to the extension connector58 of the terminal device 7 when the terminal device 7 is attached tothe input device 220. Thus, it is possible to exchange data between theinput device 220 and the terminal device 7. Therefore, data representingoperations performed on the input device 220 and data representingimage-capturing results obtained by the image-capturing device may betransmitted to the game device 3 via the terminal device 7. In otherembodiments, the input device 220 may communicate directly with the gamedevice 3. That is, data representing operations performed on the inputdevice 220 may be transmitted directly from the input device 220 to thegame device 3 using a technique such as Bluetooth (registeredtrademark), as with the wireless communication between the controller 5and the game device 3, for example. Then, the operation datarepresenting operations performed on the terminal device 7 istransmitted from the terminal device 7 to the game device 3. As with theinput device 200, the input device 220 may include a charging terminalto be connected to the charging terminal 66 of the terminal device 7when the terminal device 7 is attached to the input device 220.

In other embodiments, a controller device may be the terminal device 7and the input device 200 (or the input device 220) provided as a singleunit. In this case, mechanisms for detachably connecting the terminaldevice 7 and the input device 200 with each other, such as theengagement holes 50 a, 50 b, 59 a and 59 b of the terminal device 7 andthe tab portions of the input device 200, are not needed.

FIG. 20 is a diagram showing another example in which an additionaldevice is connected to the terminal device 7. In FIG. 20, the terminaldevice 7 is connected (attached) to the stand 210 which is an example ofan additional device. The stand 210 is a support device for holding(supporting) the terminal device 7 so that the terminal device 7 standsat a predetermined angle. The stand 210 includes a support member 211, acharging terminal 212, and guide members 213 a and 213 b.

In the present embodiment, the stand 210 also serves as a charger, andincludes the charging terminal 212. The charging terminal 212 is aterminal that can be connected to the charging terminal 66 of theterminal device 7. While the charging terminals 66 and 212 are metalterminals in the present embodiment, they may be connectors shaped sothat one can be connected to the other. When the terminal device 7 isconnected to the stand 210, the charging terminal 212 of the stand 210and the charging terminal 66 of the terminal device 7 are brought intocontact with each other, thereby supplying power from the stand 210 tothe terminal device 7 and charging the terminal device 7.

The support member 211 is for supporting the back surface of theterminal device 7 at a predetermined angle. The support member 211supports a predetermined surface (herein the back surface) of thehousing 50 when the terminal of the terminal device 7 (the chargingterminal 66) and the terminal of the stand 210 (the charging terminal212) are connected to each other. As shown in FIG. 20, the supportmember 211 includes a wall portion 211 a and a groove portion 211 b. Thesupport member 211 supports the housing 50 on the wall portion 211 a sothat the back surface of the housing 50 is placed along a predeterminedsupport surface (herein the surface formed by the wall portion 211 a).The groove portion 211 b is a portion into which a portion (lowerportion) of the housing 50 is inserted when the terminal device 7 andthe stand 210 are connected to each other. Therefore, the groove portion211 b is formed so as to generally conform to the shape of that portionof the housing 50. The groove portion 211 b extends in a directionparallel to the support surface.

The guide members 213 a and 213 b are members which can be inserted intothe second engagement holes 50 a and 50 b of the terminal device 7 forpositioning the terminal device 7 with respect to the stand 210. Theguide members 213 a and 213 b are provided at positions corresponding tothe engagement holes 50 a and 50 b of the terminal device 7. That is,the guide members 213 a and 213 b are provided at positions such thatthey are inserted into the engagement holes 50 a and 50 b when theterminal device 7 and the stand 210 are properly connected to eachother. The terminal device 7 and the stand 210 being properly connectedto each other means that the charging terminal 212 of the stand 210 andthe charging terminal 66 of the terminal device 7 are connected to eachother. The guide members 213 a and 213 b are provided so that portionsthereof project from the bottom surface of the groove portion 211 b.That is, the guide members 213 a and 213 b are provided so that portionsthereof project upwardly from the surface of the support member 211.When the terminal device 7 is connected to the stand 210, portions ofthe guide members 213 a and 213 b are inserted respectively into theengagement holes 50 a and 50 b.

In the present embodiment, the guide members 213 a and 213 b are wheelmembers (roller portions) which can rotate. The guide members 213 a and213 b can rotate in a predetermined direction. Herein, the predetermineddirection is a direction (which is a horizontal direction) parallel tothe support surface, and in other words is the left/right direction ofthe terminal device 7 when the terminal device 7 is connected to thestand 210. The guide member may be any member as long as it is arotating member which can rotate at least in a predetermined direction.For example, in other embodiments, the guide member may be a spherewhich is rotatably supported by a concave portion of the sphere.Although the number of guide members is two in the present embodiment, anumber of guide members that corresponds to the number of engagementholes provided on the bottom surface of the terminal device 7 may beprovided, or the stand 210 may include only one guide member or three ormore guide members.

When the terminal device 7 is connected to the stand 210, the terminaldevice 7 is placed on the stand 210 at a predetermined angle with theback surface of the terminal device 7 lying against the support member211. That is, the terminal device 7 is placed on the stand 210 atpredetermined angle with a lower portion of the housing 50 inserted intothe groove portion 211 b and with the wall portion 211 a supporting theback surface of the housing 50. Therefore, in the present embodiment,the terminal device 7 is properly positioned by the support member 211with respect to the direction perpendicular to the predetermineddirection.

Herein, if the terminal device 7 and the stand 210 are not in a properpositional relationship with each other when the terminal device 7 isconnected to the stand 210, the position of the terminal device 7 iscorrected by the guide members 213 a and 213 b for proper connection.Specifically, if the engagement holes 50 a and 50 b are misaligned withthe guide members 213 a and 213 b in the predetermined direction, theguide members 213 a and 213 b come into contact with peripheral portionsof the engagement holes 50 a and 50 b of the housing 50. Then, the guidemembers 213 a and 213 b rotate, thus sliding the terminal device 7 inthe predetermined direction. In the present embodiment, since the twoguide members 213 a and 213 b are provided side by side with each otherin the predetermined direction, the bottom surface of the terminaldevice 7 can be in contact only with the guide members 213 a and 213 b,thus allowing for smoother movement of the terminal device 7. Theterminal device 7 can be moved more smoothly if peripheral portions ofthe engagement holes 50 a and 50 b are sloped (concavely sloped). As aresult of the sliding of the terminal device 7 described above, portionsof the guide members 213 a, and 213 b are inserted into the engagementholes 50 a and 50 b. Thus, the charging terminal 212 of the stand 210and the charging terminal 66 of the terminal device 7 come into contactwith each other, thereby ensuring the charging.

As described above, the user can easily connect the terminal device 7 tothe stand 210 even if the terminal device 7 is not accurately placed inposition. According to the present embodiment, the positioning of theterminal device 7 with respect to the stand 210 can be done by a simpleconfiguration including the engagement holes of the terminal device 7and the guide members of the stand 210, thereby realizing the stand 210with a small and simple configuration. Although the terminal device 7 isa relatively large portable device in the present embodiment, the stand210 itself can be realized with such a small configuration as shown inFIG. 20 even with such a large portable device. Since terminal devicesof various shapes and sizes can be connected to the stand 210, it ispossible to provide a versatile support device.

In the present embodiment, the engagement holes 50 a and 50 b are usedas holes for engaging with tab portions of an additional device, andalso as holes into which guide members are inserted. Thus, it ispossible to reduce the number of holes provided in the housing 50 of theterminal device 7, thereby simplifying the shape of the housing 50.

While the holes into which the guide members of the stand 210 areinserted are provided on the lower side surface of the housing 50 (theengagement holes 50 a and 50 b) in the above embodiment, holes may beprovided at any positions. For example, holes may be provided on otherside surfaces of the housing 50, or holes may be provided on the frontsurface or the back surface of the housing 50. The guide portions needto be provided at positions in accordance with the positions of theholes. Therefore, if holes are provided on the front surface or the backsurface of the housing 50, the guide portions of the stand 210 may beprovided at positions on the wall portion 211 a, for example. Holes maybe provided on a plurality of surfaces of the housing 50, and then theterminal device 7 can be placed on the stand 210 in any of variousdirections.

5. Game Process

Next, the details of the game processes performed in the present gamesystem will be described. First, various data used in the game processeswill be described. FIG. 21 is a table showing various data used in thegame processes. FIG. 21 is a table showing primary data to be stored inthe main memory (the external main memory 12 or the internal main memory11 e) of the game device 3. As shown in FIG. 21, the main memory of thegame device 3 stores a game program 90, receive data 91, and processdata 106. In addition to those shown in FIG. 21, the main memory alsostores other data necessary for the game, such as image data of variousobjects appearing in the game, and sound data used in the game, etc.

At an appropriate point in time after the power of the game device 3 isturned ON, a part or whole of the game program 90 is loaded from theoptical disc 4 and stored in the main memory. The game program 90 may beobtained from the flash memory 17 or an external device of the gamedevice 3 (e.g., via the Internet), instead of from the optical disc 4. Apart of the game program 90 (e.g., a program for calculating theattitude of the controller 5 and/or the terminal device 7) may bepre-stored in the game device 3.

The receive data 91 are various data received from the controller 5 andthe terminal device 7. The receive data 91 includes controller operationdata 92, terminal operation data 97, camera image data 104, andmicrophone sound data 105. If a plurality of controllers 5 areconnected, there is a plurality of controller operation data 92. If aplurality of terminal devices 7 are connected, there are a plurality ofterminal operation data 97, a plurality of camera image data 104, and aplurality of microphone sound data 105.

The controller operation data 92 is data representing operationsperformed by the user (player) on the controller 5. The controlleroperation data 92 is transmitted from the controller 5 to the gamedevice 3 and stored in the main memory. The controller operation data 92includes first operation button data 93, first acceleration data 94,first angular velocity data 95, and marker coordinate data 96. The mainmemory may store a predetermined number of latest (most recentlyobtained) sets of controller operation data.

The first operation button data 93 is data representing the input statusof the operation buttons 32 a to 32 i provided on the controller 5.Specifically, the first operation button data 93 represents whether eachof the operation buttons 32 a to 32 i is pressed.

The first acceleration data 94 is data representing the acceleration(acceleration vector) detected by the acceleration sensor 37 of thecontroller 5. While the first acceleration data 94 herein representsthree-dimensional acceleration of which each component is theacceleration for one of the three axes of X, Y and Z shown in FIG. 3, itmay represent acceleration for any one or more directions in otherembodiments.

The first angular velocity data 95 is data representing the angularvelocity detected by the gyrosensor 48 in the controller 5. While thefirst angular velocity data 95 herein represents angular velocity abouteach of the three axes of X, Y and Z shown in FIG. 3, it may representangular velocity about any one or more axes in other embodiments.

The marker coordinate data 96 is data representing coordinatescalculated by the image processing circuit 41 of the imagecapturing/processing section 35, i.e., the marker coordinates describedabove. The marker coordinates are expressed in a two-dimensionalcoordinate system for representing a position on a plane correspondingto the captured image, and the marker coordinate data 96 representscoordinate values in the two-dimensional coordinate system.

The controller operation data 92 may be data representing operations bythe user operating the controller 5, and may be data including only someof the data 93 to 96. In a case in which the controller 5 includes otherinput mechanisms (e.g., a touch panel or an analog stick, etc.), thecontroller operation data 92 may include data representing operationsperformed on the other input mechanisms. In a case in which the movementof the controller 5 itself is used as a game operation as in the presentembodiment, the controller operation data 92 includes data whose valuechanges in accordance with the movement of the controller 5 itself, asis the first acceleration data 94, the first angular velocity data 95 orthe marker coordinate data 96.

The terminal operation data 97 is data representing operations performedby the user on the terminal device 7. The terminal operation data 97 istransmitted from the terminal device 7 and obtained by the game device 3to be stored in the main memory. The terminal operation data 97 includessecond operation button data 98, stick data 99, touch position data 100,second acceleration data 101, second angular velocity data 102, andazimuthal direction data. The main memory may store a predeterminednumber of latest (most recently obtained) sets of terminal operationdata.

The second operation button data 98 is data representing the inputstatus of the operation buttons 54A to 54L provided on the terminaldevice 7. Specifically, the second operation button data 98 representswhether each of the operation buttons 54A to 54L is pressed.

The stick data 99 is data representing the direction and the amount ofslide (or tilt) of the stick portion of the analog stick 53 (the analogsticks 53A and 53B). The direction and the amount may be represented astwo-dimensional coordinates or a two-dimensional vector, for example.

The touch position data 100 is data representing the position (touchposition) on the input surface of the touch panel 52 at which an inputis made. In the present embodiment, the touch position data 100represents coordinate values in a two-dimensional coordinate system forrepresenting a position on the input surface. In a case in which thetouch panel 52 is of a multi-touch type, the touch position data 100 mayrepresent a plurality of touch positions.

The second acceleration data 101 is data representing the acceleration(acceleration vector) detected by the acceleration sensor 73. While thesecond acceleration data 101 represents three-dimensional accelerationof which each component is the acceleration for one of the three axes ofx, y and z shown in FIG. 8 in the present embodiment, it may representacceleration for any one or more directions in other embodiments.

The second angular velocity data 102 is data representing the angularvelocity detected by the gyrosensor 74. While the second angularvelocity data 102 represents angular velocity about each of the threeaxes of x, y and z shown in FIG. 8 in the present embodiment, it mayrepresent angular velocity about any one or more axes in otherembodiments.

Azimuthal direction data 103 is data representing the azimuthaldirection detected by the magnetic sensor 72. In the present embodiment,the azimuthal direction data 103 represents the direction of apredetermined azimuthal direction (e.g., north) with respect to theterminal device 7. However, in a place where there is a magnetic fieldother than the geomagnetic field, the azimuthal direction data 103 doesnot strictly represent the absolute azimuthal direction (e.g., north).Nevertheless, it represents a relative direction of the terminal device7 with respect to the direction of the (local) magnetic field in thatplace, and it is therefore possible to calculate the change in theattitude of the terminal device 7 even in such cases.

The terminal operation data 97 may be data representing operationsperformed by the user on the terminal device 7, and may be dataincluding only one of the data 98 to 103 described above. In a case inwhich the terminal device 7 includes other input mechanisms (e.g., atouch pad, image-capturing section of the controller 5, etc.), theterminal operation data 97 may include data representing operationsperformed on the other input mechanisms. In a case in which the movementof the terminal device 7 itself is used as a game operation as in thepresent embodiment, the terminal operation data 97 includes data whosevalue changes in accordance with the movement of the terminal device 7itself, as is the second acceleration data 101, the second angularvelocity data 102 or the azimuthal direction data 103.

The camera image data 104 is data representing images (camera images)captured by the camera 56 of the terminal device 7. The camera imagedata 104 is image data obtained by the codec LSI 27 expanding thecompressed image data from the terminal device 7, and the data is storedin the main memory by the input/output processor 11 a. The main memorymay store a predetermined number of latest (most recently obtained) setsof camera image data.

The microphone sound data 105 is data representing sounds (microphonesounds) detected by the microphone 79 of the terminal device 7. Themicrophone sound data 105 is sound data obtained by the codec LSI 27expanding the compressed sound data transmitted from the terminal device7, and the data is stored in the main memory by the input/outputprocessor 11 a.

The process data 106 is data used in the game processes (FIG. 22) to bedescribed later. The process data 106 includes control data 107,controller attitude data 108, terminal attitude data 109, imagerecognition data 110, and sound recognition data 111. In addition tothose shown in FIG. 21, the process data 106 also includes various dataused in the game processes, such as data representing various parametersset for various objects appearing in the game.

The control data 107 is data representing control instructions for thecomponents of the terminal device 7. For example, the control data 107represents an instruction for controlling the lighting of the markersection 55, an instruction for controlling the image-capturing operationof the camera 56, etc. The control data 107 is transmitted to theterminal device 7 at an appropriate point in time.

The controller attitude data 108 is data representing the attitude ofthe controller 5. In the present embodiment, the controller attitudedata 108 is calculated based on the first acceleration data 94, thefirst angular velocity data 95 and the marker coordinate data 96included in the controller operation data 92. The method for calculatingthe controller attitude data 108 will be described below in step S23.

The terminal attitude data 109 is data representing the attitude of theterminal device 7. In the present embodiment, the terminal attitude data109 is calculated based on the second acceleration data 101, the secondangular velocity data 102 and the azimuthal direction data 103 includedin the terminal operation data 97. The method for calculating theterminal attitude data 109 will be described below in step S24.

The image recognition data 110 is data representing the results of apredetermined image recognition process for the camera image. The imagerecognition process may be any process as long as it detects any featureof the camera image to output the results of the detection, and may be,for example, a process of extracting a predetermined object (e.g., theface of the user, a marker, etc.) from the camera image and calculatinginformation regarding the extracted object.

The sound recognition data 111 is data representing the results of apredetermined sound recognition process for the microphone sounds. Thesound recognition process may be any process as long as it detects anyfeature from the microphone sounds to output the results of thedetection, and may be, for example, a process of detecting words of theuser or a process of simply outputting the sound volume.

Next, with reference to FIG. 22, the details of the game processperformed by the game device 3 will be described. FIG. 22 is a main flowchart showing the flow of the game processes performed by the gamedevice 3. When the power of the game device 3 is turned ON, the CPU 10of the game device 3 executes a boot program stored in a boot ROM (notshown), so as to initialize each unit, including the main memory. Then,the game program stored in the optical disc 4 is loaded to the mainmemory, and the CPU 10 starts executing the game program. The gamedevice 3 may be configured to execute the game program stored in theoptical disc 4 immediately after power-up, or it may be configured sothat a built-in program is executed after power-up for displaying apredetermined menu screen first, and then the game program stored in theoptical disc 4 is executed when the start of the game is instructed bythe user by a menu selection, for example. The flow chart of FIG. 22 isa flow chart showing the process to be performed after processesdescribed above are completed.

The process of the steps of the flow chart shown in FIG. 22 is merelyillustrative, and the order of steps to be performed may be switchedaround as long as similar results are obtained. The values of thevariables, and the threshold values used in determination steps are alsomerely illustrative, and other values may be used as necessary. Whilethe present embodiment is described while assuming that the processes ofthe steps of the flow chart are performed by the CPU 10, processes ofsome of the steps may be performed by a processor or a dedicated circuitother than the CPU 10.

First, in step S1, the CPU 10 performs an initialization process. Theinitialization process is, for example, a process of constructing avirtual game space, placing objects appearing in the game space at theirinitial positions, and setting initial values of various parameters usedin the game processes.

In the present embodiment, in the initialization process, the CPU 10controls the lighting of the marker device 6 and the marker section 55based on the type of the game program. Here, the game system 1 has twoimage-capturing objects for the image-capturing section of thecontroller 5 (the image capturing/processing section 35), i.e., themarker device 6 and the marker section 55 of the terminal device 7.Either or both of the marker device 6 and the marker section 55 may beused, depending on the content of the game (the type of the gameprogram). The game program 90 includes data indicating whether each ofthe marker device 6 and the marker section 55 should be lit. The CPU 10reads out this data to determine whether or not to light them. Whenlighting the marker device 6 and/or the marker section 55, the followingprocess is performed.

That is, when lighting the marker device 6, the CPU 10 transmits, to themarker device 6, a control signal for lighting the infrared LEDs of themarker device 6. The transmission of the control signal may be simplysupplying the power. In response to this, the infrared LEDs of themarker device 6 are lit. On the other hand, when lighting the markersection 55, the CPU 10 generates control data for lighting the markersection 55 and stores the data in the main memory. The generated controldata is transmitted to the terminal device 7 in step S10 to be describedlater. The control data received by the wireless module 70 of theterminal device 7 is sent to the UI controller 75 via the codec LSI 76,and the UT controller 75 gives a lighting instruction to the markersection 55. This lights the infrared LEDs of the marker section 55.While a case in which the marker device 6 and the marker section 55 arelit has been described above, the marker device 6 and the marker section55 can be turned off through a similar process to the process oflighting them.

The process of step S2 is performed, following step S1 described above.Thereafter, the process loop including a series of processes of steps S2to S11 is repeatedly performed at a rate of once per a predeterminedamount of time (e.g., one frame period).

In step S2, the CPU 10 obtains controller operation data transmittedfrom the controller 5. Since the controller 5 repeatedly transmits thecontroller operation data to the game device 3, the controller operationdata is successively received by the controller communication module 19in the game device 3, and the received controller operation data issuccessively stored in the main memory by the input/output processor 11a. The transmission/reception interval is preferably shorter than thegame process time, and is, for example, 1/200 sec. In step S2, the CPU10 reads out the latest (most recently received) controller operationdata 92 from the main memory. The process of step S3 is performed,following step S2.

In step S3, the CPU 10 obtains various data transmitted from theterminal device 7. Since the terminal device 7 repeatedly transmits theterminal operation data, the camera image data and the microphone sounddata to the game device 3, the game device 3 successively receives thesedata. In the game device 3, the terminal communication module 28successively receives these data, and the camera image data and themicrophone sound data are successively expanded by the codec LSI 27.Then, the input/output processor 11 a successively stores the terminaloperation data, the camera image data and the microphone sound data inthe main memory. In step S3, the CPU 10 reads out the latest (mostrecently received) terminal operation data 97 from the main memory. Theprocess of step S4 is performed, following step S3.

In step S4, the CPU 10 performs the game control process. The gamecontrol process is a process for allowing the game to progress by, forexample, performing processes such as controlling the action of anobject in the game space in accordance with the game operation by theuser. In the present embodiment, the user can play various games byusing the controller 5 and/or the terminal device 7. Now, with referenceto FIG. 23, the game control process will be described.

FIG. 23 is a flow chart showing the detailed flow of a game controlprocess. While the series of processes shown in FIG. 23 are variousprocesses that can be performed in a case in which the controller 5 andthe terminal device 7 are used as controller devices, it is notnecessary to perform all of the processes, and only some of theprocesses may be performed depending on the type and content of thegame.

In the game control process, first, in step S21, the CPU 10 determineswhether or not to change the marker to be used. In the presentembodiment, the process of controlling the lighting of the marker device6 and the marker section 55 is performed at the start of the gameprocess (step S1), as described above. Here, depending on the game, amarker or markers to be used (lit) among the marker device 6 and themarker section 55 may be changed in the middle of the game. It may bepossible to use both the marker device 6 and the marker section 55depending on the game, but if they are both lit, one of the markers maybe erroneously detected for the other marker. Therefore, there are casesin which it is preferred to switch between the markers during the gameso that only one of them is lit. In view of such cases, the process ofstep S21 is a process of determining whether the marker to be lit ischanged in the middle of the game.

The determination of step S21 can be made by the following method, forexample. That is, the CPU 10 can make the determination based on whetherthe game status (the stage of the game, the object to be controlled,etc.) has changed. When the game status changes, the control method maybe switched between a control method in which the controller 5 iscontrolled facing the marker device 6, and a control method in which thecontroller 5 is controlled facing the marker section 55. The CPU 10 canmake the determination based, for example, on the attitude of thecontroller 5. That is, the determination can be made based on whetherthe controller 5 is facing the marker device 6 or facing the markersection 55. The attitude of the controller 5 can be calculated based onthe detection results of the acceleration sensor 37 and the gyrosensor48, for example (see step S23 to be described later). The CPU 10 canmake the determination based on whether there has been an instruction ofchange from the user.

If the determination result of step S21 is affirmative, the process ofstep S22 is performed. On the other hand, if the determination result ofstep S21 is negative, the process of step S22 is skipped and the processof step S23 is performed.

In step S22, the CPU 10 controls the lighting of the marker device 6 andthe marker section 55. That is, it changes the lighting status of themarker device 6 and/or the marker section 55. The specific process oflighting or turning off the marker device 6 and/or the marker section 55can be performed in a similar manner to that of step S1. The process ofstep S23 is performed, following step S22.

As described above, according to the present embodiment, the lightemission (lighting) of the marker device 6 and the marker section 55 canbe controlled depending on the type of the game program through theprocess of step S1, and the light emission (lighting) of the markerdevice 6 and the marker section 55 can be controlled in accordance withthe game status through the process of steps S21 and S22.

In step S23, the CPU 10 calculates the attitude of the controller 5. Inthe present embodiment, the attitude of the controller 5 is calculatedbased on the first acceleration data 94, the first angular velocity data95 and the marker coordinate data 96. The method for calculating theattitude of the controller 5 will now be described.

First, the CPU 10 calculates the attitude of the controller 5 based onthe first angular velocity data 95 stored in the main memory. While themethod for calculating the attitude of the controller 5 from the angularvelocity may be any method, the attitude is calculated using theprevious attitude (the attitude calculated in a previous iteration) andthe current angular velocity (the angular velocity obtained in step S2in a current iteration of the process loop). Specifically, the CPU 10calculates the attitude by rotating the previous attitude by a unittime's worth of the current angular velocity. The previous attitude isrepresented by the controller attitude data 108 stored in the mainmemory, and the current angular velocity is represented by the firstangular velocity data 95 stored in the main memory. Therefore, the CPU10 reads out the controller attitude data 108 and the first angularvelocity data 95 from the main memory to calculate the attitude of thecontroller 5. The data representing “the attitude based on the angularvelocity” calculated as described above is stored in the main memory.

Where the attitude is calculated from the angular velocity, it ispreferred that an initial attitude is set. That is, where the attitudeof the controller 5 is calculated from the angular velocity, the CPU 10initially calculates the initial attitude of the controller 5. Theinitial attitude of the controller 5 may be calculated based on theacceleration data, or the player may be prompted to perform apredetermined operation with the controller 5 in a particular attitudeso that the particular attitude at the point in time when thepredetermined operation is performed is used as the initial attitude.While it is preferred to calculate the initial attitude in a case inwhich the attitude of the controller 5 is calculated as an absoluteattitude with respect to a predetermined direction in the space, theinitial attitude may not be calculated in a case in which the attitudeof the controller 5 is calculated as a relative attitude with respect tothe attitude of the controller 5 at the start of the game, for example.

Next, the CPU 10 corrects the attitude of the controller 5 calculatedbased on the angular velocity by using the first acceleration data 94.Specifically, the CPU 10 first reads out the first acceleration data 94from the main memory and calculates the attitude of the controller 5based on the first acceleration data 94. Here, in a state in which thecontroller 5 is substantially stationary, the acceleration acting uponthe controller 5 means the gravitational acceleration. Therefore, inthis state, the direction of the gravitational acceleration (thedirection of gravity) can be calculated by using the first accelerationdata 94 outputted from the acceleration sensor 37, and it is thereforepossible to calculate the direction (attitude) of the controller 5 withrespect to the direction of gravity based on the first acceleration data94. The data representing “the attitude based on the acceleration”calculated as described above is stored in the main memory.

After calculating the attitude based on the acceleration, the CPU 10then corrects the attitude based on the angular velocity by using theattitude based on the acceleration. Specifically, the CPU 10 reads outdata representing the attitude based on the angular velocity and datarepresenting the attitude based on the acceleration from the mainmemory, and makes a correction such that the attitude based on theangular velocity data is brought closer to the attitude based on theacceleration data at a predetermined rate. The predetermined rate may bea predetermined fixed value, and may be set in accordance with theacceleration represented by the first acceleration data 94, etc. Withthe attitude based on the acceleration, the attitude cannot becalculated for the rotation direction about the direction of gravity,and therefore the CPU 10 may not make a correction for the rotationdirection. In the present embodiment, data representing the correctedattitude obtained as described above is stored in the main memory.

After the attitude based on the angular velocity is corrected asdescribed above, the CPU 10 further corrects the corrected attitudeusing the marker coordinate data 96. First, the CPU 10 calculates theattitude of the controller 5 based on the marker coordinate data 96 (theattitude based on marker coordinates). Since the marker coordinate data96 represents positions of the markers 6R and 6L within the capturedimage, the attitude of the controller 5 can be calculated for the rolldirection (the rotation direction about the Z axis) can be calculatedfrom these positions. That is, the attitude of the controller 5 for theroll direction can be calculated from the gradient of the straight lineconnecting between the position of the marker 6R and the position of themarker 6L within the captured image. In a case in which the position ofthe controller 5 with respect to the marker device 6 can be identified(e.g., a case in which it can be assumed that the controller 5 islocated in front of the marker device 6), the attitude of the controller5 for the pitch direction and that for the yaw direction can becalculated from the position of the marker device 6 within the capturedimage. For example, when the positions of the markers 6R and 6L move tothe left within the captured image, it can be determined that thecontroller 5 has changed its orientation (attitude) to the right. Thus,the attitude of the controller 5 for the pitch direction and that forthe yaw direction can be calculated from the positions of the marker 6Rand the marker 6L. As described above, it is possible to calculate theattitude of the controller 5 based on the marker coordinate data 96.

After the attitude based on marker coordinates is calculated, the CPU 10next corrects the corrected attitude (the attitude which has beencorrected by the attitude based on the acceleration) by the attitudebased on marker coordinates. That is, the CPU 10 makes a correction suchthat the corrected attitude is brought closer to the attitude based onmarker coordinates at a predetermined rate. The predetermined rate maybe predetermined fixed value. The correction by the attitude based onmarker coordinates may be made only for any one or two of the rolldirection, the pitch direction and the yaw direction. For example, wherethe marker coordinate data 96 is used, since it is possible to calculatethe attitude with high precision for the roll direction, the CPU 10 maymake the correction using the attitude based on the marker coordinatedata 96 only for the roll direction. If the image-capturing element 40of the controller 5 does not capture the image of the marker device 6 orthe marker section 55, it is not possible to calculate the attitudebased on the marker coordinate data 96, and therefore the correctionprocess using the marker coordinate data 96 may not be performed in sucha case.

In the above description, the CPU 10 corrects the first attitude of thecontroller 5 calculated based on the first angular velocity data 95using the first acceleration data 94 and the marker coordinate data 96.Here, with the method using the angular velocity, among the methods forcalculating the attitude of the controller 5, it is possible tocalculate the attitude no matter how the controller 5 is moving. On theother hand, with the method using the angular velocity, since theattitude is calculated by cumulatively adding the successively-detectedangular velocities, accumulation of errors, or the like, may lead topoor precision, and a so-called “temperature drift” problem maydeteriorate the precision of the gyrosensor. With the method using theacceleration, errors do not accumulate, but it is not possible tocalculate the attitude with high precision in a state in which thecontroller 5 is being moved violently (since the direction of gravitycannot be detected accurately). With the method using markercoordinates, the attitude can be calculated with high precision(particularly for the roll direction), but it is not possible tocalculate the attitude in a state in which it is not possible to capturean image of the marker section 55. As opposed to this, the attitude ofthe controller 5 can be calculated more accurately in the presentembodiment since three different methods with different characteristicsare used as described above. In other embodiments, the attitude may becalculated by using any one or two of the three methods described above.Where the lighting of the markers is controlled in the process of stepS1 or S22, it is preferred that the CPU 10 calculates the attitude ofthe controller 5 using et least marker coordinates.

The process of step S24 is performed, following step S23. In step S24,the CPU 10 calculates the attitude of the terminal device 7. That is,since the terminal operation data 97 obtained from the terminal device 7includes the second acceleration data 101, the second angular velocitydata 102, and the azimuthal direction data 103, the CPU 10 calculatesthe attitude of the terminal device 7 based on these data. Here, the CPU10 can know the amount of rotation per unit time (the amount of changeof the attitude) of the terminal device 7 from the second angularvelocity data 102. In a state in which the terminal device 7 issubstantially stationary, the acceleration acting upon the terminaldevice 7 means the gravitational acceleration, and it is thereforepossible to know, from the second acceleration data 101, the directionof gravity acting upon the terminal device 7 (i.e., the attitude of theterminal device 7 with respect to the direction of gravity). It ispossible to know, from the azimuthal direction data 103, a predeterminedazimuthal direction with respect to the terminal device 7 (i.e., theattitude of the terminal device 7 with respect to a predeterminedazimuthal direction). Even in a case in which there is a magnetic fieldother than the geomagnetic field, it is possible to know the amount ofrotation of the terminal device 7. Therefore, the CPU 10 can calculatethe attitude of the terminal device 7 based on the second accelerationdata 101, the second angular velocity data 102 and the azimuthaldirection data 103. While the attitude of the terminal device 7 iscalculated based on the three data in the present embodiment, theattitude may be calculated based on one or two of the three data inother embodiments.

While the specific method for calculating the attitude of the terminaldevice 7 may be any method, it is for example a method in which theattitude calculated based on the angular velocity represented by thesecond angular velocity data 102 is corrected using the secondacceleration data 101 and the azimuthal direction data 103.Specifically, the CPU 10 first calculates the attitude of the terminaldevice 7 based on the second angular velocity data 102. The method forcalculating the attitude based on angular velocity may be similar to themethod of step S23. Next, the CPU 10 corrects the attitude calculatedbased on the angular velocity by the attitude calculated based on thesecond acceleration data 101 and/or the attitude calculated based on theazimuthal direction data 103 at an appropriate point in time (e.g., whenthe terminal device 7 is close to being stationary). The method forcorrecting the attitude based on the angular velocity by the attitudebased on the acceleration may be similar to the method for calculatingthe attitude of the controller 5 described above. In a case in which theattitude based on the angular velocity is corrected by the attitudebased on the azimuthal direction data, the CPU 10 may bring the attitudebased on the angular velocity closer to the attitude based on theazimuthal direction data at a predetermined rate. As described above,the CPU 10 can accurately calculate the attitude of the terminal device7.

Since the controller 5 includes the image capturing/processing section35 which is an infrared detector, the game device 3 can obtain themarker coordinate data 96. Therefore, for the controller 5, the gamedevice 3 can know, from the marker coordinate data 96, the absoluteattitude in the real space (the attitude of the controller 5 in thecoordinate system set in the real space). On the other hand, theterminal device 7 does not include an infrared detector such as theimage capturing/processing section 35. Therefore, the game device 3cannot know, only from the second acceleration data 101 and the secondangular velocity data 102, the absolute attitude in the real space forthe rotation direction about the direction of gravity. In view of this,the present embodiment employs a configuration in which the terminaldevice 7 includes the magnetic sensor 72, and the game device 3 obtainsthe azimuthal direction data 103. Then, for the rotation direction aboutthe direction of gravity, the game device 3 can calculate the absoluteattitude in real space from the azimuthal direction data 103, and it ispossible to more accurately calculate the attitude of the terminaldevice 7.

As a specific process of step S24, the CPU 10 reads out the secondacceleration data 101, the second angular velocity data 102, and theazimuthal direction data 103 from the main memory, and calculates theattitude of the terminal device 7 based on these data. Then, thecalculated data representing the attitude of the terminal device 7 isstored in the main memory as the terminal attitude data 109. The processof step S25 is performed, following step S24.

In step S25, the CPU 10 performs a recognition process for a cameraimage. That is, the CPU 10 performs a predetermined recognition processon the camera image data 104. The recognition process may be any processas long as it detects any feature from the camera image to output theresults of the detection. For example, where the face of the player isincluded in the camera image, it may be a process of recognizing theface. Specifically, it may be a process of detecting parts of the face(eyes, nose, mouth, etc.) or a process of detecting the expression ofthe face. The data representing the results of the recognition processis stored in the main memory as the image recognition data 110. Theprocess of step S26 is performed, following step S25.

In step S26, the CPU 10 performs a recognition process for microphonesounds. That is, the CPU 10 performs a predetermined recognition processon the microphone sound data 105. The recognition process may be anyprocess as long as it detects any feature from the microphone sound tooutput the results of the detection. For example, it may be a process ofdetecting an instruction of the player from the microphone sounds or aprocess of simply detecting the sound volume of the microphone sounds.The data representing the results of the recognition process is storedin the main memory as the sound recognition data 111. The process ofstep S27 is performed, following step S26.

In step S27, the CPU 10 performs the game process in accordance with agame input. Herein, the game input may be any data as long as it is datatransmitted from the controller 5 or the terminal device 7, or dataobtained from such data. Specifically, the game input may be any ofvarious data included in the controller operation data 92 and theterminal operation data 97, as well as data obtained from such data (thecontroller attitude data 108, the terminal attitude data 109, the imagerecognition data 110, and the sound recognition data 111). The contentof the game process in step S27 may be any content, and it may be, forexample, a process of controlling the action of an object (character)appearing in the game, a process of controlling a virtual camera, or aprocess of moving a cursor displayed on the screen. It may also be aprocess of using the camera image (or a portion thereof) as a gameimage, a process of using the microphone sound as a game sound, etc.Examples of the game process will be described later. In step S27, datarepresenting the results of the game control process are stored in themain memory, such as, for example, data of various parameters set forthe character (object) appearing in the game, data of parametersregarding the virtual camera provided in the game space, and score data.After step S27, the CPU 10 ends the game control process of step S4.

Referring back to FIG. 22, in step S5, a television game image to bedisplayed on the television 2 is generated by the CPU 10 and the GPU 11b. That is, the CPU 10 and the GPU 11 b read out data representing theresults of the game control process of step S4 from the main memory andread out data necessary for generating a game image from the VRAM 11 dto generate a game image. The game image may be any image as long as itrepresents the results of the game control process of step S4, and itmay be generated by any method. For example, the game image generationmethod may be a method in which a virtual camera is provided in thevirtual game space, and a three-dimensional CG image is generated bycalculating the game space as seen from the virtual camera, or a methodin which a two-dimensional image is generated (without using a virtualcamera). The generated television game image is stored in the VRAM 11 d.The process of step S6 is performed, following step S5.

In step S6, a terminal game image to be displayed on the terminal device7 is generated by the CPU 10 and the GPU 11 b. As with the televisiongame image, the terminal game image may be any image as long as itrepresents the results of the game control process of step S4, and itmay be generated by any method. The terminal game image may be generatedby a method similar to that for the television game image or may begenerated by a different method. The generated terminal game image isstored in the VRAM 11 d. Depending on the content of the game, thetelevision game image and the terminal game image may be the same, inwhich case it is not necessary to perform the process of generating agame image in step S6. The process of step S7 is performed, followingstep S6.

In step S7, a television game sound to be outputted to the speaker 2 aof the television 2 is generated. That is, the CPU 10 has the DSP 11 cgenerate a game sound in accordance with the results of the game controlprocess of step S4. The generated game sound may be, for example, asound effect of the game, the voice of a character appearing in thegame, BGM, etc. The process of step S8 is performed, following step S7.

In step S8, a terminal game sound to be outputted to the speaker 77 ofthe terminal device 7 is generated. That is, the CPU 10 has the DSP 11 cgenerate a game sound in accordance with the results of the game controlprocess of step S4. The terminal game sound may be the same as, ordifferent from, the television game sound. They may be partiallydifferent from each other, e.g., differing from each other with thesound effect but being the same with the BGM. In a case in which thetelevision game sound and the terminal game sound are the same, the gamesound generating process may not be performed in step S8. The process ofstep S9 is performed, following step S8.

In step S9, the CPU 10 outputs a game image and a game sound to thetelevision 2. Specifically, the CPU 10 sends the data of the televisiongame image stored in the VRAM 11 d and the data of the television gamesound generated by the DSP 11 c in step S7 to the AV-IC 15. In responseto this, the AV-IC 15 outputs the image and sound data to the television2 via the AV connector 16. Thus, the television game image is displayedon the television 2, and the television game sound is outputted from thespeaker 2 a. The process of step S10 is performed, following step S9.

In step S10, the CPU 10 transmits a game image and a game sound to theterminal device 7. Specifically, the image data which is a terminal gameimage stored in the VRAM 11 d and the sound data generated by the DSP 11c in step S8 are sent by the CPU 10 to the codec LSI 27, and aresubjected to a predetermined compression process by the codec LSI 27.Moreover, the image and sound data which have been subjected to thecompression process are transmitted by the terminal communication module28 to the terminal device 7 via the antenna 29. The terminal device 7receives the image and sound data transmitted from the game device 3 bythe wireless module 70, and the data are subjected to a predeterminedexpansion process by the codec LSI 76. The image data which has beensubjected to the expansion process is outputted to the LCD 51, and thesound data which has been subjected to the expansion process isoutputted to the sound IC 68. Thus, the terminal game image is displayedon the LCD 51, and the terminal game sound is outputted from the speaker77. The process of step S11 is performed, following step S10.

In step S11, the CPU 10 determines whether the game should be ended. Thedetermination of step S11 is made based on, for example, whether thegame is over, the user has given an instruction to quit the game, etc.If the determination result of step S11 is negative, the process of stepS2 is performed again. On the other hand, if the determination result ofstep S11 is affirmative, the CPU 10 ends the game process shown in FIG.22. The series of processes through steps S2 to S11 is repeatedlyperformed until it is determined in step S11 that the game should beended. The game end process may include, for example, processes forsaving game data to a memory card and the like.

As described above, in the present embodiment, the terminal device 7includes the touch panel 52, and an inertia sensor such as theacceleration sensor 73 and/or the gyrosensor 74, and the outputs of thetouch panel 52 and the inertia sensor are transmitted as operation datato the game device 3, and used as game inputs (steps S3 and S4).Moreover, the terminal device 7 includes a display device (the LCD 51),and game images obtained by the game process is displayed on the LCD 51(steps S6 and S10). Therefore, the user can perform an operation ofdirectly touching on the game image using the touch panel 52, and anoperation of moving the LCD 51 itself on which the game image isdisplayed (since the movement of the terminal device 7 is detected bythe inertia sensor). With these operations, the user can play a gamewith such gameplay as if the user were directly operating the gameimage, and it is therefore possible to provide a game with novelgameplay such as the first and second game examples to be describedlater, for example.

Moreover, in the present embodiment, the terminal device 7 includes theanalog stick 53 and the operation button 54 which can be operated whileholding the terminal device 7, and the game device 3 can use, as gameinputs, operations performed on the analog stick 53 and the operationbutton 54 (steps S3 and S4). Therefore, even where the game image isdirectly operated as described above, the user can perform a moredetailed game operation through the button operation and the stickoperation.

Moreover, in the present embodiment, the terminal device 7 includes thecamera 56 and the microphone 79, and data of the camera image capturedby the camera 56 and data of the microphone sounds detected by themicrophone 79 are transmitted to the game device 3 (step S3). Therefore,with the game device 3, since the camera image and/or microphone soundscan be used as game inputs, the user can perform game operations throughan operation of capturing an image with the camera 56 or an operation ofinputting sounds to the microphone 79. Since these operations can beperformed while holding the terminal device 7, the user can perform agreater variety of game operations by performing such operations whendirectly operating the game image as described above.

In the present embodiment, since a game image is displayed on the LCD 51which is the terminal device 7 of a portable type (steps S6 and S10),the user can freely position or place the terminal device 7. Therefore,where the controller 5 is operated while being pointed toward themarker, the user can play a game while pointing the controller 5 towardan arbitrary direction by placing the terminal device 7 at an arbitraryposition, thus improving the degree of freedom in the operation of thecontroller 5. Since the terminal device 7 can be placed at an arbitraryposition, it is possible to provide a more realistic game by placing theterminal device 7 at a position suitable for the content of the game, asin the fifth game example to be described below, for example.

According to the present embodiment, since the game device 3 obtainsoperation data, etc., from the controller 5 and the terminal device 7(steps S2 and S3), the user can use one or both of the controller 5 andthe terminal device 7 to provide operation inputs. Therefore, in thegame system 1, a game can be played with multiple users in which thedevices are used by a plurality of users (e.g., one user usingcontroller 5 and another user using terminal device 7), or a game can beplayed with a single user using the two devices.

According to the present embodiment, the game device 3 generates twotypes of game images (steps S5 and S6), and the game images aredisplayed on the television 2 and the terminal device 7 (steps S9 andS10). Thus, as the two types of game images are displayed on differentdevices, it is possible to provide game images that are easier for theuser to view, and it is possible to improve the playability of the game.For example, where a game is played by two players, a game image from aviewpoint that is easier for one user to view may be displayed on thetelevision 2 while a game image from a viewpoint that is easier for theother user to view is displayed on the terminal device 7, as in thethird or fourth game example to be described below, in which case eachplayer can play the game with a viewpoint that is easier for the playerto view. Even if the game is played by one player, for example, if twotypes of game images are displayed from two different viewpoints, as inthe first, second and fifth game examples to be described below, theplayer can more easily grasp the state of the game space, and it istherefore possible to improve the playability of the game.

6. Game Examples

Next, specific examples of games to be played on the game system 1 willbe described. The game examples described below may not use some of thecomponents of the devices in the game system 1 and may not perform someof the series of processes shown in FIGS. 22 and 23. That is, the gamesystem 1 need not include all the components described above, and thegame device 3 may not perform some of the series of processes shown inFIGS. 22 and 23.

The first game example is a game in which an object (a shuriken, or athrowing star) is thrown in the game space by operating the terminaldevice 7. The player can specify the direction in which a shuriken isthrown through an operation of changing the attitude of the terminaldevice 7 and an operation of drawing a line on the touch panel 52.

FIG. 24 is a diagram showing the screen of the television 2 and theterminal device 7 in the first game example. In FIG. 24, a game imagerepresenting the game space is displayed on the television 2 and the LCD51 of the terminal device 7. A shuriken 121, a control surface 122 and atarget 123 are displayed on the television 2. The control surface 122(and the shuriken 121) are displayed on the LCD 51. In the first gameexample, the player plays the game by throwing the shuriken 121 at thetarget 123 through an operation using the terminal device 7.

When throwing the shuriken 121, the player first changes the attitude ofthe control surface 122 provided in the virtual game space to anintended attitude by changing or varying the attitude of the terminaldevice 7. That is, the CPU 10 calculates the attitude of the terminaldevice 7 based on the outputs of the inertia sensor (the accelerationsensor 73 and/or the gyrosensor 74) and/or the magnetic sensor 72 (stepS24), and changes the attitude of the control surface 122 based on thecalculated attitude (step S27). In the first game example, the attitudeof the control surface 122 in the virtual game space is controlled so asto be an attitude in accordance with the attitude of the terminal device7 in real space. That is, the player can change the attitude of thecontrol surface 122 in the game space by changing the attitude of theterminal device 7 (the control surface 122 displayed on the terminaldevice 7). In the first game example, the position of the controlsurface 122 is fixed at a predetermined position in the game space.

Next, the player performs an operation of drawing or forming a line onthe touch panel 52 using a stylus 124, finger or the like (see arrowshown in FIG. 24). Here, in the first game example, the control surface122 is displayed on the LCD 51 of the terminal device 7 so that theinput surface of the touch panel 52 and the control surface 122correspond to each other. Therefore, based on the line drawn on thetouch panel 52, it is possible to calculate the direction on the controlsurface 122 (the direction represented by the line). The shuriken 121 isthrown in a direction thus determined. As described above, the CPU 10performs a process of calculating the direction on the control surface122 from the touch position data 100 of the touch panel 52, and movingthe shuriken 121 in the calculated direction (step S27). The CPU 10 maycontrol the speed of the shuriken 121 in accordance with the length ofthe line or the speed at which the line is drawn, for example.

As described above, in the first game example, the game device 3 canmove the control surface 122 in accordance with the movement (attitude)of the terminal device 7 by using the output of the inertia sensor as agame input, and identify the direction on the control surface 122 byusing the output of the touch panel 52 as a game input. Thus, the playercan move the game image displayed on the terminal device 7 (the image ofthe control surface 122) and perform a touch operation on the gameimage, and can therefore play a game with such novel gameplay as if theplayer were directly operating the game image.

In the first game example, it is possible to easily specify a directionin a three-dimensional space by using sensor outputs of the inertiasensor and the touch panel 52 as a game input. That is, the player caneasily specify a direction with such an intuitive operation as if theplayer were actually inputting a direction in the space, by actuallyadjusting the attitude of the terminal device 7 with one hand whileinputting a direction with a line on the touch panel 52 with the otherhand. Moreover, since the player can perform the operation on theattitude of the terminal device 7 and the input operation on the touchpanel 52 simultaneously in parallel to each other, it is possible toquickly perform the operation of specifying a direction in athree-dimensional space.

In the first game example, the control surface 122 is displayed acrossthe entire screen of the terminal device 7 so as to facilitate the touchinput operation on the control surface 122. On the other hand, thetelevision 2 displays an image of the game space including the entirecontrol surface 122 and the target 123 (see FIG. 24) so that it is easyto grasp the attitude of the control surface 122 and aim at the target123. That is, in step S27, the first virtual camera for generating thetelevision game image is set so that the entire control surface 122 andthe target 123 are included in the range of viewing field, whereas thesecond virtual camera for generating the terminal game image is set sothat the screen of the LCD 51 (the input surface of the touch panel 52)and the control surface 122 coincide with each other on the screen.Therefore, in the first game example, images of the game space as seenfrom different viewpoints are displayed on the television 2 and on theterminal device 7, thereby facilitating the game operation.

The game using sensor outputs of the inertia sensor and the touch panel52 as a game input is not limited to the first game example describedabove, and may be any of various game examples. As is the first gameexample, the second game example is a game in which an object(cannonball) is thrown in the game space by operating the terminaldevice 7. The player can specify the direction in which the cannonballis thrown through an operation of changing the attitude of the terminaldevice 7 and an operation of specifying a position on the touch panel52.

FIG. 25 is a diagram showing the screen of the television 2 and theterminal device 7 in the second game example. In FIG. 25, a cannon 131,a cannonball 132 and a target 133 are displayed on the television 2. Thecannonball 132 and the target 133 are displayed on the terminal device7. The terminal game image displayed on the terminal device 7 is animage of the game space as seen from the position of the cannon 131.

In the second game example, the player can change the range of displayto be displayed on the terminal device 7 as the terminal game image bychanging or varying the attitude of the terminal device 7. That is, theCPU 10 calculates the attitude of the terminal device 7 based on theoutputs of the inertia sensors (the acceleration sensor 73 and/or thegyrosensor 74) and/or the magnetic sensor 72 (step S24), and controlsthe position and the attitude of the second virtual camera forgenerating the terminal game image based on the calculated attitude(step S27). Specifically, the second virtual camera is placed at theposition of the cannon 131 and the orientation (attitude) thereof iscontrolled in accordance with the attitude of the terminal device 7.Thus, the player can change the range of the game space to be displayedon the terminal device 7 by changing the attitude of the terminal device7.

In the second game example, the player specifies the direction in whichthe cannonball 132 is to be thrown by an operation of inputting a pointon the touch panel 52 (a touch operation). Specifically, as the processof step S27, the CPU 10 calculates the position (control position) inthe game space corresponding to the touched position, and calculates, asthe throwing direction, the direction from a predetermined position inthe game space (e.g., the position of the cannon 131) to the controlposition. Then, the CPU 10 performs a process of moving the cannonball132 in the throwing direction. Thus, while the player performs anoperation of drawing a line on the touch panel 52 in the first gameexample, the player performs an operation of specifying a point on thetouch panel 52 in the second game example. The control position can becalculated by setting a control surface similar to that of the firstgame example (however, the control surface is not displayed in thesecond game example). That is, the position on the control surfacecorresponding to the touch position can be calculated as the controlposition by placing the control surface in accordance with the attitudeof the second virtual camera so as to correspond to the display range ofthe terminal device 7 (specifically, the control surface rotates aboutthe position of the cannon 131 in accordance with the change in theattitude of the terminal device 7).

In the second game example, the game device 3 can change the displayrange of the terminal game image in accordance with the movement(attitude) of the terminal device 7 by using the output of the inertiasensor as a game input, and can specify a direction in the game space(the direction in which the cannonball 132 is thrown) by using the touchinput specifying a position within the display range as a game input.Thus, also in the second game example, as in the first game example, theplayer can move the game image displayed on the terminal device 7 orperform a touch operation on the game image, and can therefore play agame with such novel gameplay as if the player were directly operatingthe game image.

Also in the second game example, as in the first game example, theplayer can easily specify a direction with such an intuitive operationas if the player were actually inputting a direction in the space, byactually adjusting the attitude of the terminal device 7 with one handwhile performing a touch input on the touch panel 52 with the otherhand. Moreover, since the player can perform an operation on theattitude of the terminal device 7 and an input operation on the touchpanel 52 simultaneously in parallel to each other, it is possible toquickly perform the operation of specifying a direction in athree-dimensional space.

In the second game example, while the image displayed on the television2 may be an image from the same viewpoint as the terminal device 7, thegame device 3 displays an image from a different viewpoint in FIG. 25.That is, while the second virtual camera for generating the terminalgame image is set at the position of the cannon 131, the first virtualcamera for generating the television game image is set at a positionbehind the cannon 131. Here, for example, if a range that cannot be seenon the screen of the terminal device 7 is displayed on the television 2,it is possible to realize such gameplay that the player aims at thetarget 133, which cannot be seen on the screen of the terminal device 7,while looking at the screen of the television 2. Thus, by havingdifferent display ranges for the television 2 and for the terminaldevice 7, it is possible not only to make it easier to grasp the stateof the game space but also to further improve the playability of thegame.

As described above, according to the present embodiment, since theterminal device 7 including the touch panel 52 and the inertia sensorcan be used as a controller device, it is possible to realize a gamewith such gameplay as if the player were directly operating the gameimage, as in the first and second game examples.

Referring now to FIGS. 26 and 27, the third game example will bedescribed. The third game example is a baseball game in which twoplayers compete with each other. That is, the first player uses thecontroller 5 to control a batter, while the second player uses theterminal device 7 to control a pitcher. The television 2 and theterminal device 7 display game images which are easy for the respectiveplayers to perform operations with.

FIG. 26 is a diagram showing an example of a television game imagedisplayed on the television 2 in the third game example. The televisiongame image shown in FIG. 26 is an image primarily for the first player.That is, the television game image represents the game space showing apitcher (pitcher object) 142 which is the object to be controlled by thesecond player as seen from the side of a batter (batter object) 141which is the object to be controlled by the first player. The firstvirtual camera for generating the television game image is placed at aposition behind the batter 141 so as to be directed from the batter 141toward the pitcher 142.

On the other hand, FIG. 27 is a diagram showing an example of a terminalgame image displayed on the terminal device 7 in the third game example.The terminal game image shown in FIG. 27 is an image primarily for thesecond player. That is, the terminal game image represents the gamespace showing the batter 141 which is the object to be controlled by thefirst player as seen from the side of the pitcher 142 which is theobject to be controlled by the second player. Specifically, in step S27,the CPU 10 controls the second virtual camera used for generating theterminal game image based on the attitude of the terminal device 7. Theattitude of the second virtual camera is calculated so as to correspondto the attitude of the terminal device 7, as in the second game exampledescribed above. The position of the second virtual camera is fixed at apredetermined position. The terminal game image includes a cursor 143for indicating the direction in which the pitcher 142 is throwing theball.

The method by which the batter 141 is controlled by the first player,and the method by which the pitcher 142 is controlled by the secondplayer may be any method. For example, the CPU 10 may detect a swingoperation on the controller 5 based on output data of the inertia sensorof the controller 5, and have the batter 141 swing the bat in responseto the swing operation. For example, the CPU 10 may move the cursor 143in accordance with an operation on the analog stick 53, and have thepitcher 142 throw the ball to a position indicated by the cursor 143when a predetermined one of the operation buttons 54 is pressed. Thecursor 143 may be moved in accordance with the attitude of the terminaldevice 7, instead of an operation on the analog stick 53.

As described above, in the third game example, game images are generatedfrom different viewpoints for the television 2 and for the terminaldevice 7, thus providing game images that are easy to view and easy tooperate with for the respective players.

In the third game example, two virtual cameras are set in a single gamespace so as to display two types of game images of the game space asseen from the virtual cameras (FIGS. 26 and 27). Therefore, for the twotypes of game images generated in the third game example, most of thegame processes performed on the game space (e.g., controlling an objectin the game space) are common, and the game images can be generatedsimply by performing the drawing process twice on a common game space,thus providing an advantage that the process efficiency is higher thanwhen the game processes are performed separately.

In the third game example, since the cursor 143 representing thepitching direction is displayed only on the side of the terminal device7, the first player cannot see the position indicated by the cursor 143.Therefore, the game does not have such a problem that the first playergets to know the pitching direction to the disadvantage of the secondplayer. Thus, in the present embodiment, if there is a problem in thegame for one player if the other player sees a game image, the gameimage can be displayed on the terminal device 7. Thus, it is possible toprevent a problem of, for example, detracting from the strategic aspectof the game. In other embodiments, the game device 3 may display theterminal game image on the television 2 along with the television gameimage depending on the content of the game (e.g., where no such problemas described above occurs even if the terminal game image is seen by thefirst player).

Referring now to FIGS. 28 and 29, the fourth game example will bedescribed. The fourth game example is a shooting game in which twoplayers cooperate with each other. That is, the first player uses thecontroller 5 to perform an operation of moving an airplane, and thesecond player uses the terminal device 7 to perform an operation ofcontrolling the cannon-firing direction of the airplane. In the fourthgame example, as in the third game example, game images that are easyfor the respective players to perform game operations with are displayedon the television 2 and on the terminal device 7.

FIG. 28 is a diagram showing an example of a television game imagedisplayed on the television 2 in the fourth game example. FIG. 29 is adiagram showing an example of a terminal game image displayed on theterminal device 7 in the fourth game example. As shown in FIG. 28, anairplane (airplane object) 151 and a target (balloon object) 153 appearin the virtual game space in the fourth game example. The airplane 151has a cannon (cannon object) 152.

As shown in FIG. 28, an image of the game space including the airplane151 is displayed as the television game image. The first virtual camerafor generating the television game image is set so as to produce animage of the game space showing the airplane 151 as seen from behind.That is, the first virtual camera is placed behind the airplane 151 atsuch an attitude that the airplane 151 is included in theimage-capturing range (range of viewing field). The first virtual camerais controlled so as to be moved in accordance with the movement of theairplane 151. That is, in the process of step S27, the CPU 10 controlsthe movement of the airplane 151 based on the controller operation data,and also controls the position and the attitude of the first virtualcamera. Thus, the position and the attitude of the first virtual cameraare controlled in accordance with the operation of the first player.

On the other hand, as shown in FIG. 29, an image of the game space asseen from the airplane 151 (more specifically, the cannon 152) isdisplayed as the terminal game image. Therefore, the second virtualcamera for generating the terminal game image is placed at the positionof the airplane 151 (more specifically, the position of the cannon 152).In the process of step S27, based on the controller operation data, theCPU 10 controls the movement of the airplane 151 and also controls theposition of the second virtual camera. The second virtual camera may beplaced at a position around the airplane 151 or the cannon 152 (e.g., aposition slightly behind the cannon 152). As described above, theposition of the second virtual camera is controlled by the operation ofthe first player (operating the movement of the airplane 151).Therefore, in the fourth game example, the first virtual camera and thesecond virtual camera move in cooperation with each other.

An image of the game space as seen in the firing direction of the cannon152 is displayed as the terminal game image. Here, the firing directionof the cannon 152 is controlled so as to correspond to the attitude ofthe terminal device 7. That is, in the present embodiment, the attitudeof the second virtual camera is controlled so that the line-of-sightdirection of the second virtual camera coincides with the firingdirection of the cannon 152. In the process of step S27, the CPU 10controls the orientation of the cannon 152 and the attitude of thesecond virtual camera in accordance with the attitude of the terminaldevice 7 calculated in step S24. Thus, the attitude of the secondvirtual camera is controlled by the operation of the second player. Thesecond player can change the firing direction of the cannon 152 bychanging the attitude of the terminal device 7.

When firing a cannonball from the cannon 152, the second player pressesa predetermined button of the terminal device 7. When the predeterminedbutton is pressed, a cannonball is fired in accordance with theorientation of the cannon 152. In the terminal game image, a sight 154is displayed at the center of the screen of the LCD 51, and thecannonball is fired in the direction indicated by the sight 154.

As described above, in the fourth game example, the first playeroperates the airplane 151 (so that it moves in the direction of anintended target 153, for example) while looking primarily at thetelevision game image (FIG. 28) representing the game space viewing inthe traveling direction of the airplane 151. On the other hand, thesecond player operates the cannon 152 while looking primarily at theterminal game image (FIG. 29) representing the game space viewing in thefiring direction of the cannon 152. Thus, in the fourth game example, ina game in which two players cooperate with each other, game images thatare easy to view and easy to operate with for the respective players aredisplayed on the television 2 and on the terminal device 7.

In the fourth game example, the positions of the first virtual cameraand the second virtual camera are controlled by the operation of thefirst player, and the attitude of the second virtual camera iscontrolled by the operation of the second player. That is, in thepresent embodiment, the position or the attitude of a virtual camerachanges in accordance with the game operation by each player, therebychanging the display range of the game space to be displayed on eachdisplay device. Since the display range of the game space to bedisplayed on the display device changes in accordance with the operationof each player, each player can realize that one's game operation issufficiently reflected in the progress of the game, and can thus enjoythe game sufficiently.

In the fourth game example, a game image as seen from behind theairplane 151 is displayed on the television 2, and a game image as seenfrom the position of the cannon of the airplane 151 is displayed on theterminal device 7. Here, in other game examples, the game device 3 maydisplay a game image as seen from behind the airplane 151 on theterminal device 7, and a game image as seen from the position of thecannon 152 of the airplane 151 on the television 2. Then, the roles ofthe players are switched around from the fourth game example so that thefirst player uses the controller 5 to operate the cannon 152 while thesecond player uses the terminal device 7 to operate the airplane 151.

Referring now to FIG. 30, the fifth game example will be described. Thefifth game example is a game in which a player uses the controller 5 toperform an operation, and the terminal device 7 is used as a displaydevice, not as a controller device. Specifically, the fifth game exampleis a golf game, wherein the game device 3 has a player character in thevirtual game space take a golf swing in accordance with the playerperforming an operation (swing operation) of swinging the controller 5as if it were a golf club.

FIG. 30 is a diagram showing how the game system 1 is used in the fifthgame example. In FIG. 30, an image of the game space including (anobject of) a player character 161 and (an object of) a golf club 162 isdisplayed on the screen of the television 2. Note that (an object of) aball 163 placed in the game space is also displayed on the television 2though it is not shown in FIG. 30 as being hidden behind the golf club162. On the other hand, as shown in FIG. 30, the terminal device 7 isplaced on the floor surface in front of the television 2 so that thescreen of the LCD 51 is facing vertically upward. An image representingthe ball 163, an image representing a part of the golf club 162(specifically, a head 162 a of the golf club), and an image representingthe ground of the game space are displayed on the terminal device 7. Theterminal game image is an image of the vicinity of the ball as seen fromabove.

When playing the game, a player 160 stands near the terminal device 7,and performs a swing operation of swinging the controller 5 as if itwere a golf club. Then, in step S27, the CPU 10 controls the positionand the attitude of the golf club 162 in the game space in accordancewith the attitude of the controller 5 calculated in the process of stepS23. Specifically, the golf club 162 is controlled so that the golf club162 in the game space hits the ball 163 when the tip direction of thecontroller 5 (the Z-axis positive direction shown in FIG. 3) is pointingtoward the image of the ball 163 displayed on the LCD 51.

When the tip direction of the controller 5 is pointing toward the LCD51, an image (head image) 164 representing a part of the golf club 162is displayed on the LCD 51 (see FIG. 30). For the terminal game image,the image of the ball 163 may be shown in the actual size, and theorientation of the head image 164 may be shown to rotate in accordancewith the rotation of the controller 5 about the Z axis, in order toenhance the reality. The terminal game image may be generated using avirtual camera provided in the game space, or generated usingpre-prepared image data. When it is generated using pre-prepared imagedata, detailed and realistic images can be generated with lowcomputational load without constructing the terrain model of a golfcourse in detail.

As a result of the player 160 performing the swing operation so as toswing the golf club 162, if the golf club 162 hits the ball 163, theball 163 travels (flies). That is, the CPU 10 determines in step S27whether the golf club 162 and the ball 163 have contacted each other,and moves the ball 163 when there has been a contact. Here, thetelevision game image is generated so that the ball 163 after the travelis included therein. That is, the CPU 10 controls the position and theattitude of the first virtual camera for generating the television gameimage so that the traveling ball is included in the image-capturingrange thereof. On the other hand, on the terminal device 7, when thegolf club 162 hits the ball 163, the image of the ball 163 is moved andimmediately disappears to the outside of the screen. Thus, in the fifthgame example, the travel of the ball is displayed primarily on thetelevision 2, and the player 160 can check, on the television gameimage, the destination of the ball hit by the swing operation.

As described above, in the fifth game example, the player 160 can swingthe golf club 162 by swinging the controller 5 (have the playercharacter 161 swing the golf club 162). Here, in the fifth game example,the golf club 162 in the game space is controlled to hit the ball 163when the tip direction of the controller 5 is pointing toward the imageof the ball 163 displayed on the LCD 51. Therefore, the player canperform the swing operation and thereby feel as if the player weretaking a swing with an actual golf club, thus making the swing operationfeel more realistic.

Moreover, in the fifth game example, the head image 164 is displayed onthe LCD 51 when the tip direction of the controller 5 is pointing towardthe terminal device 7. Therefore, as the player points the tip directionof the controller 5 toward the terminal device 7, the player can feelthat the attitude of the golf club 162 in the virtual space correspondsto the attitude of the controller 5 in the real space, thus making theswing operation feel more realistic.

As described above, in the fifth game example, where the terminal device7 is used as a display device, it is possible to make the operationusing the controller 5 feel more realistic by locating the terminaldevice 7 at an appropriate position.

In the fifth game example, the terminal device 7 is placed on the floorsurface, and an image representing the game space showing only thevicinity of the ball 163 is displayed on the terminal device 7.Therefore, the position/attitude of the entire golf club 162 in the gamespace cannot be displayed on the terminal device 7, and how the ball 163travels after the swing operation cannot be displayed on the terminaldevice 7. In view of this, in the fifth game example, the entire golfclub 162 is displayed on the television 2 before the ball 163 travels,and how the ball 163 travels is displayed on the television 2 after theball 163 starts traveling. Thus, in the fifth game example, it ispossible to provide the player with a realistic operation, and gameimages that are easy to view can be presented to the player by using twoscreens of the television 2 and the terminal device 7.

In the fifth game example, the marker section 55 of the terminal device7 is used for calculating the attitude of the controller 5. That is, theCPU 10 lights the marker section 55 (does not light the marker device 6)in the initialization process of step S1, and the CPU 10 calculates theattitude of the controller 5 based on the marker coordinate data 96 instep S23. Then, it is possible to accurately determine whether the tipdirection of the controller 5 is in an attitude pointing toward themarker section 55. Note that while steps S21 and S22 do not have to beperformed in the fifth game example, a marker or markers to be lit maybe changed in the middle of the game in other game examples byperforming the process of steps S21 and S22. For example, the CPU 10 maydetermine in step S21 whether the tip direction of the controller 5 ispointing in the direction of gravity based on the first accelerationdata 94, and in step S22, the CPU 10 may light the marker section 55 ifit is pointing in the direction of gravity and light the marker device 6if it is not pointing in the direction of gravity. Then, where the tipdirection of the controller 5 is pointing in the direction of gravity,the attitude of the controller 5 can be calculated with high precisionby obtaining marker coordinate data of the marker section 55, and wherethe tip direction of the controller 5 is pointing toward the television2, the attitude of the controller 5 can be calculated with highprecision by obtaining marker coordinate data of the marker device 6.

As described above in the fifth game example, in the game system 1, theterminal device 7 can be placed at an arbitrary position and used as adisplay device. Then, when the marker coordinate data is used as a gameinput, the controller 5 can be used while pointing in an arbitrarydirection by setting the terminal device 7 at an intended position, inaddition to using the controller 5 while pointing toward the television2. That is, according to the present embodiment, since the orientationin which the controller 5 is used is not limited to any particularorientation, it is possible to improve the degree of freedom inoperations to be performed on the controller 5.

7. Other Operation Examples of Game System

In the game system 1, it is possible to perform operations for playingvarious games as described above. While the terminal device 7 can beused as a portable display or a second display, it may also be used as acontroller for making a touch input or a motion-based input, and it istherefore possible to realize a wide variety of games with the gamesystem 1. Operations as follows can also be performed, includingapplications other than games.

(Operation Example where Player Plays Game Only Using Terminal Device 7)

In the present embodiment, the terminal device 7 can function as adisplay device and can also function as a controller device. Therefore,one can use the terminal device 7 like a portable game device by usingthe terminal device 7 as a display and as an operation input device andwithout using the television 2 and the controller 5.

Specifically, according to the game process shown in FIG. 22, the CPU 10obtains the terminal operation data 97 from the terminal device 7 instep S3, and performs a game process using only the terminal operationdata 97 as a game input (without using the controller operation data) instep S4. Then, a game image is generated in step S6, and the game imageis transmitted to the terminal device 7 in step S10. Note that steps S2,S5 and S9 may not be performed. Thus, a game process is performed inaccordance with an operation on the terminal device 7, and a game imagerepresenting the game process results is displayed on the terminaldevice 7. Then, the terminal device 7 can be used as a portable gamedevice (though the game process is actually performed by the gamedevice). Therefore, according to the present embodiment, the user canplay a game using the terminal device 7 even in a case where a gameimage cannot be displayed on the television 2 for reasons such as thetelevision 2 being used (e.g., someone else watching a TV broadcast).

In addition to the game image, the CPU 10 may transmit an image of themenu screen described above to be displayed after power-up to theterminal device 7 so that the image is displayed thereon. This isconvenient because the player can play a game without using thetelevision 2 from the beginning.

Moreover, in the above description, the display device on which the gameimage is displayed can be changed from the terminal device 7 to thetelevision 2 in the middle of the game. Specifically, the CPU 10 canfurther perform step S9 to output the game image to the television 2.The image to be outputted to the television 2 in step S9 is the same asthe game image to be transmitted to the terminal device 7 in step S10.Then, by switching the input of the television 2 so that the input fromthe game device 3 is displayed thereon, the same game image as that onthe terminal device 7 is displayed on the television 2. Thus, thedisplay device on which the game image is displayed can be changed tothe television 2. After the game image is displayed on the television 2,the display of the screen of the terminal device 7 may be turned OFF.

The game system 1 may be such that the infrared remote controller signalfor the television 2 can be outputted from an infrared emitter (e.g.,the marker device 6, the marker section 55 or the infrared communicationmodule 72). Then, the game device 3 can perform an operation on thetelevision 2 by outputting the infrared remote controller signal fromthe infrared emitter in accordance with an operation on the terminaldevice 7. In such a case, since the user can operate the television 2 byusing the terminal device 7 without operating the remote controller ofthe television 2, it is convenient when, for example, switching theinput of the television 2 from one to another as described above.

(Operation Example where System Communicates with Another Device ViaNetwork)

Since the game device 3 has a network connection function as describedabove, the game system 1 can be used in a case in which it communicateswith an external device via a network. FIG. 31 is a diagram showing howdevices included in the game system 1 are connected with one another ina case in which the game system 1 is connected to an external device viaa network. As shown in FIG. 31, the game device 3 can communicate withan external device 191 via a network 190.

Where the external device 191 and the game device 3 can communicate witheach other as described above, the game system 1 can communicate withthe external device 191 using the terminal device 7 as an interface. Forexample, the game system 1 can be used as a video telephone byexchanging images and sounds between the external device 191 and theterminal device 7. Specifically, the game device 3 receives the imagesand sounds from the external device 191 (the images and the sounds ofthe other person) via the network 190, and transmits the received imagesand sounds to the terminal device 7. Then, the terminal device 7displays the images from the external device 191 on the LCD 51 andoutputs from the speaker 77 the sounds from the external device 191. Thegame device 3 receives from the terminal device 7 the camera imagescaptured by the camera 56 and the microphone sounds detected by themicrophone 79, and transmits the camera images and the microphone soundsto the external device 191 via the network 190. The game system 1 can beused as a video telephone as the game device 3 repeats the exchange ofthe images and the sounds described above with the external device 191.

Since the terminal device 7 is portable in the present embodiment, theuser can use the terminal device 7 at an arbitrary position or directthe camera 56 in an arbitrary direction. In the present embodiment,since the terminal device 7 includes the touch panel 52, the game device3 can transmit the input information made on the touch panel 52 (thetouch position data 100) to the external device 191. For example, thegame system 1 can be used as a so-called e-learning system whenoutputting from the terminal device 7 the images and sounds from theexternal device 191, and transmitting characters, etc., the user haswritten on the touch panel 52 to the external device 191.

(Operation Example where System Cooperates with TV Broadcasting)

The game system 1 can also operate in cooperation with TV broadcastingwhen a TV broadcast is being watched on the television 2. That is, whena TV program is being watched on the television 2, the game system 1 canoutput on the terminal device 7 information regarding the TV program,etc. An operation example in which the game system 1 operates incooperation with TV broadcasting will now be described.

In the operation example described above, the game device 3 cancommunicate with a server via a network (in other words, the externaldevice 191 shown in FIG. 31 is the server). The server stores, for eachchannel of TV broadcasting, various information relating to TVbroadcasting (TV information). The TV information may be program-relatedinformation such as subtitles and cast information, EPG (ElectronicProgram Guide) information, or information to be broadcast as a databroadcast. The TV information may be images, sounds, text, orinformation of a combination thereof. The number of servers does notneed to be one, a server may be provided for each channel or eachprogram of TV broadcasting, and the game device 3 may be able tocommunicate with the servers.

Where video/sound of a TV broadcast is being outputted from thetelevision 2, the game device 3 prompts the user to input the channel ofthe TV broadcast being watched by using the terminal device 7. Then, arequest is given via the network to the server to transmit TVinformation corresponding to the inputted channel. In response to this,the server transmits data of TV information corresponding to thechannel. When receiving data transmitted from the server, the gamedevice 3 outputs the received data to the terminal device 7. Theterminal device 7 displays image and text data of that data on the LCD51, and outputs sound data from the speaker. As described above, theuser can enjoy information relating to the TV program being watchedcurrently, etc., using the terminal device 7.

As described above, the game system 1 can communicate with an externaldevice (server) via a network so that information linked to TVbroadcasting can be presented to the user by the terminal device 7.Particularly, this gives great convenience since the terminal device 7is portable in the present embodiment, and the user can use the terminaldevice 7 at an arbitrary position.

As described above, in the present embodiment, the user can use theterminal device 7 in various applications/forms, in addition to gameapplications.

8. Variations

The above embodiment is an example of systems and methods that can becarried out, and the systems and methods may also be carried out with,for example, the following configurations in other embodiments.

(Variation Using Plurality of Terminal Devices)

While the game system 1 includes only one terminal device in the aboveembodiment, the game system 1 may include a plurality of terminaldevices. That is, the game device 3 may be able to wirelesslycommunicate with each of a plurality of terminal devices, wherein thegame device 3 transmits game image data, game sound data and controldata to each terminal device, and receives operation data, camera imagedata and microphone sound data from each terminal device. When the gamedevice 3 wirelessly communicates with the plurality of terminal devices,the game device 3 can realize the wireless communication with theterminal devices by time division multiple access or frequency divisionmultiple access.

In a case in which there are a plurality of terminal devices asdescribed above, a greater variety of games can be played using the gamesystem. For example, where the game system 1 includes two terminaldevices, the game system 1 has three display devices, and the gamesystem 1 can therefore generate game images for three players anddisplay the game images on the respective display devices. Where thegame system 1 includes two terminal devices, two players cansimultaneously play a game in which a controller and a terminal deviceare used as a set (e.g., the fifth game example). Moreover, where thegame process of step S27 is performed based on marker coordinate dataoutputted from two controllers, two players can each perform a gameoperation while pointing the controller toward the marker (the markerdevice 6 or the marker section 55). That is, one player can perform agame operation while pointing the controller toward the marker device 6,and the other player can perform a game operation while pointing thecontroller toward the marker section 55.

(Variation Regarding Function of Terminal Device)

In the above embodiment, the terminal device 7 functions as a so-calledthin client terminal, and does not perform the game process. Here, inother embodiments, some of a series of game processes performed by thegame device 3 in the above embodiment may be performed by other devicessuch as the terminal device 7. For example, some processes (e.g., theprocess of generating the terminal game image) may be performed by theterminal device 7. That is, the terminal device may serve as a portablegame device which performs game operations based on operations performedon operation sections so as to produce game images based on the gameprocesses and display the produced game images on a display section. Forexample, in a game system including a plurality of informationprocessing devices (game devices) that can communicate with each other,the game processes may be divided among the plurality of informationprocessing devices.

(Variation Regarding Configuration of Terminal Device)

The terminal device of the above embodiment is an example, the shape ofeach operation button of the terminal device, the shape of the housing50, and number and the positions of the components, etc., are merelyillustrative, and the present invention can be realized with othershapes, numbers, and positions. For example, the terminal device mayhave the following configuration. Variations of the terminal device willnow be described with reference to FIGS. 32 to 35.

FIG. 32 is a diagram showing an external configuration of a terminaldevice according to a variation of the above embodiment. FIG. 32( a) isa front view of the terminal device, FIG. 32( b) is a top view thereof,FIG. 32( c) is a right side view thereof, and FIG. 32( d) is a bottomview thereof. FIG. 33 is a diagram showing the terminal device shown inFIG. 32 being held by the user. In FIGS. 32 and 33, like elements tothose of the terminal device 7 of the above embodiment will be denotedby like reference numerals to those used in FIG. 8, but do not need tobe the same elements.

As shown in FIG. 32, a terminal device 8 includes a housing 50 generallyin a horizontally-elongated rectangular plate shape. The housing 50 issized so that it can be held by the user. Thus, the user can hold andmove the terminal device 8, and can change the position in which theterminal device 8 is placed.

The terminal device 8 includes the LCD 51 on the surface of the housing50. The LCD 51 is provided near the center of the surface of the housing50. Therefore, the user can hold and move the terminal device whilelooking at the screen of the LCD 51 by holding opposing end portions ofthe housing 50 with respect to the LCD 51, as shown in FIG. 9. WhileFIG. 9 shows an example in which the user holds the terminal device 8 ina landscape position (in a horizontally-oriented direction) by holdingleft and right opposing end portions of the housing 50 with respect tothe LCD 51, the user can hold the terminal device 8 in a portraitposition (in a vertically-oriented direction).

As shown in FIG. 32( a), the terminal device 8 includes the touch panel52 on the screen of the LCD 51 as an operation mechanism (operationsection). In the present embodiment, the touch panel 52 is aresistive-type touch panel. However, the touch panel is not limited tothe resistive type, and may be a touch panel of any type including, forexample, a capacitive type, etc. The touch panel 52 may be of asingle-touch type or a multi-touch type. In this variation, a touchpanel having the same resolution (detection precision) as the resolutionof the LCD 51 is used as the touch panel 52. However, the resolution ofthe touch panel 52 does not always need to coincide with the resolutionof the LCD 51. While a touch pen is usually used for making inputs onthe touch panel 52, the present invention is not limited to using atouch pen, and an input may be made on the touch panel 52 with a fingerof the user. The housing 50 may be provided with a hole foraccommodating a stylus used for performing operations on the touch panel52. Thus, since the terminal device 8 includes the touch panel 52, theuser can operate the touch panel 52 while moving the terminal device 8.That is, the user can move the screen of the LCD 51 while directly (bymeans of the touch panel 52) making an input on the screen.

As shown in FIG. 32, the terminal device 8 includes two analog sticks53A and 53B and a plurality of buttons 54A to 54L, as operationmechanisms (operation section). The analog sticks 53A and 53B are each adirection-specifying device. The analog sticks 53A and 53B are eachconfigured so that the stick portion operated with a finger of the usercan be slid or tilted in any direction (at any angle in the up, down,left, right and diagonal directions) with respect to the surface of thehousing 50. The left analog stick 53A is provided on the left side ofthe screen of the LCD 51, and the right analog stick 53B is provided onthe right side of the screen of the LCD 51. Therefore, the user can makea direction-specifying input by using an analog stick with either theleft or the right hand. As shown in FIG. 33, the analog sticks 53A and53B are provided at such positions that the user can operate them whileholding the left and right portions of the terminal device 8, andtherefore the user can easily operate the analog sticks 53A and 53B evenwhen holding and moving the terminal device 8.

The buttons 54A to 54L are each an operation mechanism for makingpredetermined inputs. As will be discussed below, the buttons 54A to 54Lare provided at such positions that the user can operate them whileholding the left and right portions of the terminal device 8 (see FIG.33). Therefore, the user can easily operate these operation mechanismseven when holding and moving the terminal device 8.

As shown in FIG. 32( a), the cross button (direction-input button) 54Aand the buttons 54B to 54H, of the operation buttons 54A to 54L, areprovided on the front surface of the housing 50. That is, these buttons54A to 54H are provided at positions at which they can be operated bythe thumbs of the user (see FIG. 33).

The cross button 54A is provided on the left side of the LCD 51 andunder the left analog stick 53A. That is, the cross button 54A isprovided at such a position that it can be operated with the left handof the user. The cross button 54A has a cross shape, and is a buttonwith which it is possible to specify up, down, left and rightdirections. The buttons 54B to 54D are provided on the lower side of theLCD 51. These three buttons 54B to 54D are provided at positions atwhich they can be operated with either the left or the right hand. Thefour buttons 54E to 54H are provided on the right side of the LCD 51 andunder the right analog stick 53B. That is, the four buttons 54E to 54Hare provided at positions at which they can be operated with the righthand of the user. Moreover, the four buttons 54E to 54H are provided onthe upper, lower, left and right side (of the center position among thefour buttons 54E to 54H). Therefore, with the terminal device 8, thefour buttons 54E to 54H can also serve as buttons with which the userspecifies the up, down, left and right directions.

As shown in FIGS. 32( a), 32(b) and 32(c), the first L button 54I andthe first R button 54J are provided in upper corner portions of thehousing 50 (the upper left portion and the upper right portion).Specifically, the first L button 54I is provided at the left end of theupper side surface of the plate-like housing 50 so that it is exposed onthe upper and left side surfaces. The first R button 54J is provided atthe right end of the upper side surface of the housing 50 so that it isexposed on the upper and right side surfaces. Thus, the first L button54I is provided at such a position that it can be operated with the leftindex finger of the user, and the first R button 54J is provided at sucha position that it can be operated with the right index finger of theuser (see FIG. 33).

As shown in FIGS. 32( b) and 32(c), a second L button 54K and a second Rbutton 54L are provided on leg portions 59A and 59B protruding from theback surface of the plate-like housing 50 (i.e., the surface opposite tothe front surface where the LCD 51 is provided). As with the eavesportion 59 of the above embodiment, the leg portions 59A and 59B areprovided so as to extend across areas on the reverse side includingpositions generally corresponding to the operation sections (the analogsticks 53A and 53B) which are provided respectively on the left side andon the right side of the display section. The second L button 54K isprovided slightly toward the upper side in the left portion (the leftportion as viewed from the front surface side) of the back surface ofthe housing 50, and the second R button 54L is provided slightly towardthe upper side in the right portion (the right portion as viewed fromthe front surface side) of the back surface of the housing 50. In otherwords, the second L button 54K is provided on the reverse side so as togenerally correspond to the left analog stick 53A provided on the frontsurface, and the second R button 54L is provided on the reverse side soas to generally correspond to the right analog stick 53B provided on thefront surface. Thus, the second L button 54K is provided at a positionat which it can be operated with the left middle finger of the user, andthe second R button 54L is provided at a position at which it can beoperated with the right middle finger of the user (see FIG. 33). Thesecond L button 54K and the second R button 54L are provided on thediagonally-upwardly-facing surfaces of the leg portions 59A and 59B, andhave diagonally-upwardly-facing button surfaces, as shown in FIG. 32(c). It is believed that the middle fingers will generally move in theup/down direction when the user holds the terminal device 8, and it willbe easier for the user to press the second L button 54K and the second Rbutton 54L if the button surfaces are facing upward. The provision ofthe leg portions on the back surface of the housing 50 makes it easierfor the user to hold the housing 50, and the provision of the buttons onthe leg portions makes it easier for the user to perform inputoperations while holding the housing 50.

With the terminal device 8 shown in FIG. 32, since the second L button54K and the second R button 54L are provided on the back surface, whenthe terminal device 8 is put down with the screen of the LCD 51 (thefront surface of the housing 50) facing up, the screen may not liecompletely horizontal. Therefore, in other embodiments, three or moreleg portions may be provided on the back surface of the housing 50.Then, it can be put down on the floor surface (or other horizontalsurface) with the leg portions in contact with the floor surface withthe screen of the LCD 51 facing up, and it is therefore possible to putdown the terminal device so that the screen lies horizontal. Adetachable leg portion may be added so that the terminal device 8 can beput down horizontally.

The buttons 54A to 54L are each assigned a function in accordance withthe game program. For example, the cross button 54A and the buttons 54Eto 54H may be used for direction-specifying operations, selectionoperations, etc., whereas the buttons 54B to 54E may be used for OKbutton operations, cancel button operations, etc.

Although not shown in the figures, the terminal device 8 may include apower button for turning ON/OFF the power of the terminal device 8. Theterminal device 8 may include a button for turning ON/OFF the display ofthe screen of the LCD 51, a button for performing a connection setting(pairing) with the game device 3, and a button for adjusting the volumeof the speaker (the speaker 77 shown in FIG. 10).

As shown in FIG. 32( a), the terminal device 8 includes a marker sectionincluding the marker 55A and the marker 55B (the marker section 55 shownin FIG. 10) on the front surface of the housing 50. The marker section55 is provided on the upper side of the LCD 51. The marker 55A and themarker 555 are each formed by one or more infrared LEDs, as are themarkers 6R and 6L of the marker device 6. The marker section 55 is usedfor the game device 3 to calculate the movement, etc., of the controller5, as is the marker device 6 described above. The game device 3 cancontrol the lighting of the infrared LEDs of the marker section 55.

The terminal device 8 includes the camera 56 as an image-capturingmechanism. The camera 56 includes an image-capturing element (e.g., aCCD image sensor, a CMOS image sensor, or the like) having apredetermined resolution, and a lens. As shown in FIG. 32, the camera 56is provided on the front surface of the housing 50 in this variation.Therefore, the camera 56 can capture an image of the face of the userholding the terminal device 8, and can capture an image of the userplaying a game while looking at the LCD 51, for example.

The terminal device 8 includes a microphone (the microphone 79 shown inFIG. 10) as a sound input mechanism. The microphone hole 50 c isprovided on the front surface of the housing 50. The microphone 79 isprovided inside the housing 50 behind the microphone hole 50 c. Themicrophone detects sounds around the terminal device 8 such as the voiceof the user.

The terminal device 8 includes a speaker (the speaker 77 shown in FIG.10) as a sound output mechanism. As shown in FIG. 32( d), the speakerholes 57 are provided on the lower side surface of the housing 50. Theoutput sounds from the speaker 77 is outputted from the speaker holes57. In this variation, the terminal device 8 includes two speakers, anda speaker holes 57 are provided at the respective positions of each ofthe left speaker and the right speaker.

The terminal device 8 includes the extension connector 58 via whichanother device can be connected to the terminal device 8. In thisvariation, the extension connector 58 is provided on the lower sidesurface of the housing 50 as shown in FIG. 32( d). The other deviceconnected to the extension connector 58 may be any device, and may be,for example, a game-specific controller (gun-shaped controller, etc.) oran input device such as a keyboard. The extension connector 58 may beomitted if there is no need to connect other devices to terminal device8.

With the terminal device 8 shown in FIG. 32, the shape of each operationbutton, the shape of the housing 50, the number and the positions of thecomponents, etc., are merely illustrative, and the present invention canbe realized with other shapes, numbers, and positions.

As described above, in the variation described above, the two legportions 59A and 59B are provided, as projecting portions, at positionsin the left and right opposing portions on the back surface of thehousing 50. Then, as in the above embodiment, the user can easily holdthe terminal device 8 by holding the terminal device 8 while the bottomsurfaces of the projecting portions are resting on the ring fingers orthe middle fingers (see FIG. 33). Since the second L button 54K and thesecond R button 54L are provided on the upper surfaces of the projectingportions, as in the above embodiment, the user can easily operate thesebuttons in such a state as described above.

Preferably, the projecting portion is provided so as to project at leastat left and right positions on the back side of the housing above thecenter of the housing, as in the embodiment and the variation describedabove. Then, when the user holds the left and right opposing sides ofthe housing, the user can easily hold the terminal device by holding itso as to allow the projecting portion to rest on the fingers. Since theprojecting portion is provided in the upper portion, the user cansupport the housing also with the palms (see FIG. 10, etc.), thus firmlyholding the terminal device.

The projecting portion does not need to be provided above the center ofthe housing. For example, in a case in which operation sections areprovided on the left side and on the right side of the display section,the projecting portion may be provided at a position at which it canrest on any fingers other than the thumbs while the user is holding thehousing in such a manner that the user can operate the operationsections with the thumbs of both hands. Also in this case, the user caneasily hold the terminal device by holding it so as to allow theprojecting portion to rest on the fingers.

FIGS. 34 and 35 are diagrams showing an external configuration of aterminal device according to another variation of the above embodiment.FIG. 34 is a right side view of the terminal device, and FIG. 35 is abottom view thereof. A terminal device 9 shown in FIGS. 34 and 35 issimilar to the terminal device 7 of the above embodiment except for theprovision of protruding portions 230 a and 230 b. The configuration ofthe terminal device 9 of this variation will now be described focusingon differences from the above embodiment.

The protruding portions 230 a and 230 b have a protruding cross section,and are provided respectively in the left and right portions on the backside of the housing 50. Herein, the protruding portion 230 a is providedin the left portion (the left portion as viewed from the front surfaceside) of the housing 50, and the protruding portion 230 b is provided inthe right portion (the right portion as viewed from the front surfaceside) of the housing 50. As shown in FIG. 35, the protruding portions230 a and 230 b are provided along the left and right opposing sides(the opposing end portions) of the housing 50. The protruding portions230 a and 230 b are provided below the projecting portion (the eavesportion 59). The protruding portions 230 a and 230 b are spaced apartfrom the projecting portion. That is, portions of the housing 50 betweenthe protruding portions 230 a and 230 b and the projecting portion arethinner than the protruding portions and the projecting portion. Theprojecting portion of each of the protruding portions 230 a and 230 bextends in the up/down direction, and the cross section thereof in thedirection perpendicular to the up/down direction has a protruding shape.

In this variation, the user can more firmly hold the terminal device 9by holding it so as to wrap around the protruding portions 230 a and 230b with the little fingers (and the ring fingers). That is, theprotruding portions 230 a and 230 b serve as grip portions While theprotruding portion (grip portion) may be of any shape, it is preferablyformed so as to extend in the up/down direction, thereby making iteasier to hold the terminal device 9. While the height of the protrudingportions 230 a and 230 b may be any height, it may be formed to be lowerthan the projecting portion. Then, when the terminal device 9 is putdown with the screen of the LCD 51 facing up, the lower portion of thescreen will be lower than the upper portion of the screen, and it istherefore possible to put down the terminal device 9 in such a mannerthat it is easy to view. Since the protruding portions 230 a and 230 bare spaced apart from the projecting portion, the user can hold theterminal device 9 with fingers abutting against the bottom surface ofthe projecting portion, and the protruding portions 230 a and 230 b donot interfere with the fingers. As described above, according to thevariation described above, with the provision of the protruding portionsbelow the projecting portion, the user can more firmly hold the terminaldevice. In other embodiments, no projecting portion may be provided onthe back surface of the housing 50, and even in that case, the user canfirmly hold the housing 50 with the protruding portions (grip portions).An anti-slip material may be used on the surface of the protrudingportions (grip portions) in order to further improve the grip function.Also in the absence of the protruding portions, an anti-slip materialmay be used on the housing back surface.

(Variation Regarding Devices to which Present Configuration is Applied)

Although the above embodiment is directed to an example of a terminaldevice that is used in combination with a home-console type game device,the configuration of the controller device described herein isapplicable to any device which is held by the user. For example, thecontroller device may be implemented as any information terminal such asa portable game device, a mobile telephone, a smart phone, an electronicbook reader, etc.

As discussed above, the various systems, methods, and techniquesdescribed herein may be implemented in digital electronic circuitry,computer hardware, firmware, software, or in combinations of theseelements. Apparatus embodying these techniques may include appropriateinput and output devices, a computer processor, and a computer programproduct tangibly embodied in a non-transitory machine-readable storagedevice for execution by a programmable processor. A process embodyingthese techniques may be performed by a programmable processor executinga suitable program of instructions to perform desired functions byoperating on input data and generating appropriate output. Thetechniques may be implemented in one or more computer programs that areexecutable on a programmable system including at least one programmableprocessor coupled to receive data and instructions from, and to transmitdata and instructions to, a data storage system, at least one inputdevice, and at least one output device. Each computer program may beimplemented in a high-level procedural or object-oriented programminglanguage or in assembly or machine language, if desired; and in anycase, the language may be a compiled or interpreted language. Suitableprocessors include, by way of example, both general and special purposemicroprocessors. Generally, a processor will receive instructions anddata from a read-only memory and/or a random access memory.Non-transitory storage devices suitable for tangibly embodying computerprogram instructions and data include all forms of computer memoryincluding, but not limited to, non-volatile memory, including by way ofexample semiconductor memory devices, such as Erasable ProgrammableRead-Only Memory (EPROM), Electrically Erasable Programmable Read-OnlyMemory (EEPROM), and flash memory devices; magnetic disks such asinternal hard disks and removable disks; magneto-optical disks; andCompact Disc Read-Only Memory (CD-ROM). Any of the foregoing may besupplemented by, or incorporated in, specially-designed ASICs(application-specific integrated circuits).

The processing system/circuitry described in this specification is“programmed” to control processes such as game processes in accordancewith the “logic” described in the specification. One of ordinary skillin the art will therefore recognize that, for example, a processingsystem including at least one CPU when executing instructions inaccordance this logic operates as “programmed logic circuitry” toperform the operations defined by the logic.

As described above, the present invention is applicable to, for example,a controller device (terminal device) used in a game system, etc., withthe aim of, for example, allowing it to be easily held by the user.

While the invention has been described in detail, the foregoingdescription is in all aspects illustrative and not restrictive. It isunderstood that numerous other modifications and variations can bedevised without departing from the scope of the invention.

1. A device support system comprising a portable device, and a supportdevice for supporting the portable device, wherein: the portable devicecomprises: a generally plate-shaped housing with a hole formed therein;and a first terminal provided on a surface of the housing on which thehole is formed; and the support device comprises: a second terminalwhich can be connected to the first terminal; a support member whichsupports a predetermined surface of the housing when the first terminaland the second terminal are connected to each other; and a rotatingmember which can rotate in a predetermined direction and which isprovided at such a position that the rotating member is inserted intothe hole when the first terminal and the second terminal are connectedto each other.
 2. The device support system according to claim 1wherein: the support member supports the housing so that thepredetermined surface of the housing is placed along a predeterminedsupport surface; and the rotating member can rotate in a directionparallel to the support surface.
 3. The device support system accordingto claim 2, wherein the support member includes a groove portionextending in a direction parallel to the support surface into which aportion of the housing is inserted when the first terminal and thesecond terminal are connected to each other.
 4. The device supportsystem according to claim 3, wherein the rotating member is provided sothat a portion thereof projects from a bottom surface of the grooveportion.
 5. The device support system according to claim 1, wherein: thehole is formed on a lower side surface of the housing; and at least tworotating members are provided side by side with each other in thepredetermined direction.
 6. The device support system according to claim1, wherein: the portable device further comprises a display sectionprovided on a front side of the housing; the hole is formed on a sidesurface of the housing; and the support member supports a back surfaceof the housing.
 7. The device support system according to claim 1,wherein: the housing is in a horizontally-elongated plate shape; and thefirst terminal and the hole are provided on a side surface along a longside.
 8. The device support system according to claim 1, wherein thehole is formed so that the hole can engage with a predeterminedadditional device which is different from the support device.
 9. Thedevice support system according to claim 1, wherein the second terminalis a charging terminal for supplying power to the portable device.
 10. Asupport device for supporting a portable device comprising: a secondterminal which can be connected to a first terminal provided on ahousing of the portable device; a support member which supports apredetermined surface of the housing when the first terminal and thesecond terminal are connected to each other; and a rotating member whichcan rotate in a predetermined direction and which is provided at such aposition that the rotating member is inserted into a hole formed on asurface of the housing on which the first terminal is provided when thefirst terminal and the second terminal are connected to each other. 11.The support device according to claim 10, wherein: the support membersupports the housing so that a predetermined surface of the housing isplaced along a predetermined support surface; and the rotating membercan rotate in a direction parallel to the support surface.
 12. Thesupport device according to claim 11, wherein the support memberincludes a groove portion extending in a direction parallel to thesupport surface into which a portion of the housing is inserted when thefirst terminal and the second terminal are connected to each other. 13.The support device according to claim 12, wherein the rotating member isprovided so that a portion thereof projects from a bottom of the grooveportion.
 14. The support device according to claim 10, wherein at leasttwo rotating members are provided side by side with each other in thepredetermined direction.